python - Pandas 将 DataFrame2 ROW 附加到 DataFrame1 ROW
问题描述
我想将第二个 DataFrame (df2) 中的行附加到第一个 DataFrame (df1),具体取决于 df1 列中的“isValid”是否为 [T]rue。
我知道如何遍历 df1 列并搜索 True 值,但不知道如何轻松地从第二个 DataFrame 追加行。原来我的数据大约有1000行40列,所以我需要自动进行操作。
import pandas
df1 = pandas.read_csv('df1.csv', sep=';')
df2 = pandas.read_csv('df2.csv', sep=';')
print(df1.to_string(), '\n')
print(df2.to_string(), '\n')
columnSeriesObj = df1.iloc[:, 2]
n = 0
k = 0
for i in columnSeriesObj:
if i == "T":
print("True in row number", k)
# APPEND n ROW from df2 to k ROW from df1
n += 1
k += 1
print('\n', df1.to_string())
以下是一些测试值:
df1.csv
DataA;DataB;isValid
1568;1104;F
1224;1213;F
1676;1246;F
1279;1489;T
1437;1890;T
1705;1007;F
1075;1720;F
1361;1983;F
1966;1751;F
1938;1564;F
1894;1684;F
1189;1803;F
1275;1138;F
1085;1748;T
1337;1775;T
1719;1975;F
1045;1187;F
1426;1757;F
1410;1363;F
1405;1025;F
1699;1873;F
1777;1464;F
1925;1310;T
df2.csv
Nr;X;Y;Z;A ;B;C
1;195;319;18;qwe;hjk;wsx
2;268;284;23;rty;zxc;edc
3;285;277;36;uio;vbn;rfv
4;143;369;34;asd;mlp;tgb
5;290;247;16;fgh;qaz;yhn
我想 df1 后追加看起来像这样(来自 Excel 的屏幕截图):
感谢您的任何建议!:D
解决方案
您可以过滤df1
列isValid
等于的索引值,然后使用过滤后的索引值T
更新索引,最后使用:df2
df1
join
df1
m = df1['isValid'].eq('T')
idx = m[m].index[:len(df2)]
df1.join(df2.set_index(idx)).fillna('')
DataA DataB isValid Nr X Y Z A B C
0 1568 1104 F
1 1224 1213 F
2 1676 1246 F
3 1279 1489 T 1 195 319 18 qwe hjk wsx
4 1437 1890 T 2 268 284 23 rty zxc edc
5 1705 1007 F
6 1075 1720 F
7 1361 1983 F
8 1966 1751 F
9 1938 1564 F
10 1894 1684 F
11 1189 1803 F
12 1275 1138 F
13 1085 1748 T 3 285 277 36 uio vbn rfv
14 1337 1775 T 4 143 369 34 asd mlp tgb
15 1719 1975 F
16 1045 1187 F
17 1426 1757 F
18 1410 1363 F
19 1405 1025 F
20 1699 1873 F
21 1777 1464 F
22 1925 1310 T 5 290 247 16 fgh qaz yhn
推荐阅读
- .net-5 - 项目“net5.csproj”以“net5.0”为目标。以 '.NETFramework,Version=v4.6.1' 为目标的项目不能引用它
- php - WordPress 网站中出现了新表格 - 寻求帮助以了解它们的用途?
- oracle - spring boot + oracle 驱动 + 没有合适的驱动
- javascript - 如何获取持有状态的“activeCat”对象的所有信息?
- asp.net - 如何在 WebForms ASP .NET 站点中读取 ASP .Net cookie
- python - 访问在 while 循环中生成的函数的名称。(Python)
- javascript - 在 Ionic Vue 应用程序中使用选项卡时导航到不同路线的问题
- javascript - 正则表达式从 HTML 注释中获取属性,如字符串
- python - ValueError:检查目标时出错:预期dense_2的形状为(2,),但数组的形状为(75,)
- c# - 如何在 NSwagStudio 中为 C# 客户端自定义生成的 DTO