如何提取特定行并将其粘贴到另一个 Dataframe 中的所有行?
例如,当我有两个 Dataframe 如下:
df1={'category': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I']}
df1=pd.DataFrame(df1)
df2={'value 1': [1, 1, 2, 5, 3, 4, 4, 8, 7],
'value 2': [4, 2, 8, 5, 7, 9, 3, 4, 2]}
df2=pd.DataFrame(df2)
df1
# category
#0 A
#1 B
#2 C
#3 D
#4 E
#5 F
#6 G
#7 H
#8 I
df2
# value 1 value 2
#0 1 4
#1 1 2
#2 2 8
我想将第四行复制到df1中的所有行
df3
# category value 1 value 2
#0 A 1 2
#1 B 1 2
#2 C 1 2
#3 D 1 2
#4 E 1 2
#5 F 1 2
#6 G 1 2
#7 H 1 2
#8 I 1 2
感谢Axe319,我更改了注解中的代码。
但我的检查结果却出乎意料。
df3 = pd.concat([df1, df2.apply(lambda _: df2.iloc[1], axis=1)], axis=1)
df3
# category value 1 value 2
#0 A 1.0 2.0
#1 B 1.0 2.0
#2 C 1.0 2.0
#3 D NaN NaN
#4 E NaN NaN
#5 F NaN NaN
#6 G NaN NaN
#7 H NaN NaN
#8 I NaN NaN
我猜想它只根据df2中的行数填充,但我无法理解这种情况。
1条答案
按热度按时间t3psigkw1#
示例#1:创建两个数据框,并将第二个附加到第一个。
输出:enter link description here
enter link description here
现在将df2附加到df1的末尾。
输出:enter link description here
注意第二个数据框的索引值会保留在附加的数据框中。如果我们不想这样做,可以设置ignore_index=True。
输出:enter link description here