python-3.x - 在pandas DF中划分多列
问题描述
给定df2
DF,其中
df2[car_colname]
car_30 car_90 ...
2005-02-21 0.117660 0.004845 ...
2005-02-22 0.145713 0.000901 ...
2005-02-23 0.074074 0.002139 ...
2005-02-24 0.076934 -0.004596 ...
2005-02-25 0.085200 -0.016227 ...
2005-04-08 0.097728 -0.005937 ...
2005-04-11 0.222366 0.007553 ...
和
df2[sd_colname]
std_30 std_90 ...
2005-02-21 0.052266 0.004150 ...
2005-02-22 0.052266 0.004150 ...
2005-02-23 0.052266 0.004150 ...
2005-02-24 0.052266 0.004150 ...
2005-02-25 0.052266 0.004150 ...
2005-04-08 0.061682 0.006731 ...
2005-04-11 0.061682 0.006731 ...
我想按行划分df2[car_colname]
,df2[sd_colname]
以便第一行的结果来自:0.117660 / 0.052266 = 2.25117667317185
and 0.004845 / 0.004150 = 1.16746987951807
,依此类推...
2005-02-21 2.25117667317185 1.16746987951807 ...
2005-02-22 2.78791183561015 0.21710843373494 ...
2005-02-23 1.41725022002832 0.515421686746988 ...
2005-02-24 1.4719703057437 -1.10746987951807 ...
2005-02-25 1.6301228331994 -3.91012048192771 ...
2005-04-08 1.58438442333258 -0.882038330114396 ...
2005-04-11 3.60503874712234 1.12212152726192 ...
我试过了df2[car_colname] / df2[sd_colname]
还是df2[car_colname].div(df2[sd_colname])
没用。
解决方案
你可能需要改变你的columns
让它完全一样的两个dfs
df1.columns=df1.columns.str.split('_').str[-1]
df2.columns=df2.columns.str.split('_').str[-1]
df1.div(df2)
Out[786]:
30 90
2005-02-21 2.251177 1.167470
2005-02-22 2.787912 0.217108
2005-02-23 1.417250 0.515422
2005-02-24 1.471970 -1.107470
2005-02-25 1.630123 -3.910120
2005-04-08 1.584384 -0.882038
2005-04-11 3.605039 1.122122
推荐阅读
- sql-insert - 如何在Mule4中为ORACLE实现不存在的INSERT
- c# - C# 打印 pdf 和进程重叠
- android - PlatformException(错误,java.lang.IllegalStateException:尝试创建未注册类型的平台视图:plugins.flutter.io/webview
- rust - 如何覆盖 Rust 中特定类型的 trait 实现?
- drupal-8 - drupal 8 使用钩子表单更改在注册表单上添加链接
- javascript - 如何正确划分前端和后端之间的任务?
- python - 将 .hyper tableau 文件转换为 pandas 数据框时出错
- javascript - 谷歌分析视图中没有浏览量(但显示了事件)
- html - 通过 Identityserver4 成功认证后如何重定向到客户端回调页面?
- python - 我需要将登录的网页转换为 PDF。如何将 selenium get_cookies() 获得的 cookie 传递给 pdfkit?