Python 如何将一个数据帧的行添加到另一个数据帧的列?
我有数据帧df1:Python 如何将一个数据帧的行添加到另一个数据帧的列?,python,pandas,dataframe,Python,Pandas,Dataframe,我有数据帧df1: DP1 DP2 DP3 DP4 DP5 DP6 DP7 DP8 DP9 DP10 OP1 3.359070 1.748457 1.488064 1.072251 1.209890 1.070304 1.060037 1.073360 1.018044 NaN OP2 2.97
DP1 DP2 DP3 DP4 DP5 DP6 DP7 DP8 DP9 DP10
OP1 3.359070 1.748457 1.488064 1.072251 1.209890 1.070304 1.060037 1.073360 1.018044 NaN
OP2 2.978232 1.879798 1.243196 1.187115 1.106631 1.153122 1.061442 1.058955 NaN NaN
OP3 4.187777 1.723949 1.293835 1.187355 1.092288 1.086494 1.047356 NaN NaN NaN
OP4 3.957950 1.496112 1.458111 1.222045 1.013905 1.123005 NaN NaN NaN NaN
OP5 3.609144 1.755843 1.295679 1.058462 1.002556 NaN NaN NaN NaN NaN
OP6 3.835973 2.056845 1.575320 1.092493 NaN NaN NaN NaN NaN NaN
OP7 3.408095 1.865307 1.653651 NaN NaN NaN NaN NaN NaN NaN
OP8 4.590085 1.870876 NaN NaN NaN NaN NaN NaN NaN NaN
OP9 4.690647 NaN NaN NaN NaN NaN NaN NaN NaN NaN
Weighted Avg 3.827345 1.798862 1.431810 1.144936 1.078714 1.110358 1.055943 1.065052 1.018044 1.0
CDF 15.477815 4.044008 2.248093 1.570105 1.371348 1.271280 1.144927 1.084270 1.018044 1.0
第二数据帧df2:
Paid
OP1 3901463.0
OP2 5339085.0
OP3 4909315.0
OP4 4588268.0
OP5 3873311.0
OP6 3691712.0
OP7 3483130.0
OP8 2864498.0
OP9 1363294.0
OP10 344014.0
我想将df1CDF的最后一行作为列按相反顺序添加到df2
我想要这样的输出:
Paid CDF
3901463 1.00
5339085 1.01
4909315 1.08
4588268 1.14
3873311 1.27
3691712 1.37
3483130 1.57
2864498 2.24
1363294 4.04
344014 15.47
您可以从行中提取值,使用np.flip反转这些值,然后创建一个新列
import numpy as np
df2['CDF'] = np.flip(df1.loc['CDF'].values)
您可以从行中提取值,使用np.flip反转这些值,然后创建一个新列
import numpy as np
df2['CDF'] = np.flip(df1.loc['CDF'].values)
有点笨重,但是如果你想把它保存在所有的熊猫身上,你可以: 作为pd进口熊猫 df2['CDF']=pd.Seriesdf1.loc['CDF'].sort_values.values,index=df2.index
有点笨重,但是如果你想把它保存在所有的熊猫身上,你可以: 作为pd进口熊猫 df2['CDF']=pd.Seriesdf1.loc['CDF'].sort_values.values,index=df2.index 一个简单的方法是:
df2['CDF'] = df.loc['CDF'].values[::-1]
或者使用
两种印刷品:
Paid CDF
index
OP1 3901463 1
OP2 5339085 1.018044
OP3 4909315 1.084270
OP4 4588268 1.144927
OP5 3873311 1.271280
OP6 3691712 1.371348
OP7 3483130 1.570105
OP8 2864498 2.248093
OP9 1363294 4.044008
OP10 344014 15.477815
一个简单的方法是:
df2['CDF'] = df.loc['CDF'].values[::-1]
或者使用
两种印刷品:
Paid CDF
index
OP1 3901463 1
OP2 5339085 1.018044
OP3 4909315 1.084270
OP4 4588268 1.144927
OP5 3873311 1.271280
OP6 3691712 1.371348
OP7 3483130 1.570105
OP8 2864498 2.248093
OP9 1363294 4.044008
OP10 344014 15.477815
谢谢你:是的rkedhttps://stackoverflow.com/q/66983920/15506607 你能解决这个问题吗?谢谢rkedhttps://stackoverflow.com/q/66983920/15506607 你能解决这个问题吗?太好了,谢谢