python – Pandas DataFrame合并选择更高的值

python – Pandas DataFrame合并选择更高的值,第1张

概述我有两个这样的DataFrame: 1 2 3 0 61.579 0.000000 47.2798611 0.000 0.000000 0.0000002 62.700 9.180000 48.4798613 56.100 40.180000 71.6798614 73.100 50.930000 71 我有两个这样的DataFrame:

1          2          3 0   61.579   0.000000  47.2798611    0.000   0.000000   0.0000002   62.700   9.180000  48.4798613   56.100  40.180000  71.6798614   73.100  50.930000  71.6798615   88.300  37.930000  36.479861

我需要合并它们每次选择更高的值.所有值都是浮点数.
有任何想法吗?我必须循环DataFrames?

解决方法 首先需要 concat,然后需要 groupby和最大聚合:

df1 = pd.DataFrame({0:[4,5,4],1:[7,8,9]})print (df1)   0  10  4  71  5  82  4  9df2 = pd.DataFrame({0:[8,6],1:[9,4,4]})print (df2)   0  10  8  91  5  42  6  4df = pd.concat([df1,df2]).groupby(level=0).max()print (df)   0  10  8  91  5  82  6  9

如果需要更快的解决方案使用numpy.where

a = df1.valuesb = df2.valuesdf = pd.DataFrame(np.where(a > b,a,b),index=df1.index,columns=df1.columns)print (df)   0  10  8  91  5  82  6  9
总结

以上是内存溢出为你收集整理的python – Pandas DataFrame合并选择更高的值全部内容,希望文章能够帮你解决python – Pandas DataFrame合并选择更高的值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1193992.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-03
下一篇2022-06-03

发表评论

登录后才能评论

评论列表(0条)

    保存