【问题标题】:Seaborn line graph for dataframe based on filters基于过滤器的数据帧的Seaborn折线图
【发布时间】:2021-09-18 13:12:49
【问题描述】:

我希望绘制具有以下条件的折线图:Race == ALL,Year == 2020 年龄组索引 0 到 14 和列 0 Child 到 5 或更多孩子。

我尝试了以下代码,但它不起作用。

PopulationCensusCombined['Age Group'].iloc[0:15]
ChildColumns = PopulationCensusCombined.columns[4:].to_list()
PopulationCensusCombined[ChildColumns]
PopulationCensusCombined.shape #output (150,10)

sns.lineplot(
    data=PopulationCensusCombined.query(("Race == 'ALL' & Year==2020")),
    x = PopulationCensusCombined[ChildColumns],
    y=PopulationCensusCombined['Age Group'].iloc[0:15], 
    style="choice",
    palette="flare")

以下错误是:

ValueError:当同时使用两者时,DataFrame 向量的长度必须与 data 的长度匹配,但 data 的长度为 15,而传递给 x 的向量的长度为 150。

【问题讨论】:

    标签: python pandas matplotlib seaborn


    【解决方案1】:

    正如错误所说。

    data 和 x 组件具有不同的维度。

    由于以下查询,

    PopulationCensusCombined.query(("Race == 'ALL' & Year==2020"))
    

    data 仅接收 15 行(根据数据帧的图像),而 x 考虑原始数据帧的所有 150 行,导致不匹配。将只有 15 行的 ChildColumns 分配给 x 应该可以解决您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-07
      • 1970-01-01
      • 2021-10-27
      • 2018-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      相关资源
      最近更新 更多