小编Slo*_*ing的帖子

Pandas df 操作 - 将数据分成 2 列

我有一个示例数据框,其中包含 2 个指示列(下面的示例,产品和版本 - 其中版本号只能是 1 或 2)和包含实际数据的第三列。

product       version       data    
  a              1          8000
  a              2          1000
  b              1          4000
  b              2          2000
  c              1          9000
  c              2          1000
  d              1          2500
  d              2          3000
Run Code Online (Sandbox Code Playgroud)

我试图操纵我的 df 以便代替上面的,我有 2 个数据列(比如 data1 和 data2),它们对应于该产品的版本(从而使版本列变得多余)。见下文:

product       data1       data2    
  a           8000        1000
  b           4000        2000
  c           9000        1000
  d           2500        3000
Run Code Online (Sandbox Code Playgroud)

有没有人能够就实现这一目标的简单解决方案提出建议?

python dataframe pandas

3
推荐指数
1
解决办法
31
查看次数

ivot_table(),多个 aggfunc 到*同一*列 - 可能吗?

编辑 - 请不要锁定此问题,类似的问题链接不提供答案,因为我的问题是将多个 aggfunc 应用于同一列。

我有一个标准的pivot_table()函数通过以下方式应用于数据框:

pivot = df.pivot_table(index=['Year', 'Month'], values=['Claims', 'Policy Holdings'], aggfunc={'Claims': 'min', 'Policy Holdings': 'max'})
Run Code Online (Sandbox Code Playgroud)

我很想知道,假设我想在我的值中使用同一列两次,并使用不同的 aggfunc (即最小值和最大值) - 这可能吗?

以下代码不起作用:

pivot = df.pivot_table(index=['Year', 'Month'], values=['Claims', 'Claims'], aggfunc={'Claims': 'min', 'Claims': 'max'})
Run Code Online (Sandbox Code Playgroud)

当然,我可以预先使用不同的名称复制该列,但我想有更优雅的解决方案可用吗?

python pivot pandas

1
推荐指数
1
解决办法
1095
查看次数

标签 统计

pandas ×2

python ×2

dataframe ×1

pivot ×1