gpt4 book ai didi

python - Pandas 列在附加到新数据框后已排序

转载 作者:行者123 更新时间:2023-12-04 20:50:31 25 4
gpt4 key购买 nike

我想从 df1 追加具有唯一值(不包括空单元格)的行到空df2 .df1的结构是这样的:

idx   A1     B1    C1    A2    B2    C2 
---------------------------------------
I1 n n b c
J1 x x x x x x
K1 a b c d e f
所以在这种情况下,行 K1将附加到 df2因为所有的值都是唯一的。
要附加该行,我尝试了
df2 = pd.DataFrame()
df2 = df2.append(df1.loc['K1'],sort=False)
我期待
idx   A1     B1    C1    A2    B2    C2 
---------------------------------------
K1 a b c d e f
但实际上我得到了
idx   A1     A2    B1    B2    C1    C2 
---------------------------------------
K1 a d b e c f
看起来列已排序,即使我设置了 sort=False .我知道我可以将其硬编码为 df2 = df2.append({'idx':idx,'A1':df1.loc[idx,'A1'],'A2':df1.loc[idx,'A2'],'B1':df1.loc[idx,'B1']...})实现我想要的。但是我的实际文件有 30 多列,不可能对每一列都进行硬编码。

最佳答案

append一个系列到一个数据框,所以它对列进行排序。尝试在两个数据帧上追加以保持原始列顺序(注意:append 默认 sort 为 False,因此您不需要指定它)

df_final = df2.append(df1.loc[['K1']])

Out[63]:
A1 B1 C1 A2 B2 C2
idx
K1 a b c d e f

关于python - Pandas 列在附加到新数据框后已排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64056797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com