net*_*bug 1 python dataframe pandas
我有以下数据框:
|module | name |value |
|-----------|-------|------|
|node[11] | x |4.0 |
|node[11] | y |1.0 |
|node[2] | x |2.0 |
|node[2] | y |3.0 |
|node[21] | x |6.0 |
|node[21] | y |6.0 |
Run Code Online (Sandbox Code Playgroud)
并希望创建一个新的数据框,其中包含每个模块的值 (x/y)。所以预期的输出是
|module | out |
|-----------|-------|
|node[11] | 4.0 |
|node[2] | 0.66 |
|node[21] | 1.0 |
Run Code Online (Sandbox Code Playgroud)
你可以做pivot然后计算你的需要
out = df.pivot(*df).eval('x/y').to_frame('out').reset_index()
Out[23]:
module out
0 node[11] 4.000000
1 node[21] 1.000000
2 node[2] 0.666667
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
53 次 |
| 最近记录: |