pandas - python pandas - 根据连接数据帧的索引和/或ID设置列的列值
问题描述
我有至少两个连接数据帧的连接数据帧:
i.e.
df1
Name | Type | ID
0 Joe A 1
1 Fred B 2
2 Mike Both 3
3 Frank Both 4
df2
Name | Type | ID
0 Bill Both 1
1 Jill Both 2
2 Mill B 3
3 Hill A 4
ConcatDf:
Name | Type | ID
0 Joe A 1
1 Fred B 2
2 Mike Both 3
3 Frank Both 4
0 Bill Both 1
1 Jill Both 2
2 Mill B 3
3 Hill A 4
假设将它们连接起来后,我想为 toType
的所有记录和df1
to的C
所有记录df2
设置B
。这可能吗?
数据帧的索引可以有很大不同的大小。
提前致谢。
解决方案
df3 = pd.concat([df1,df2], keys = (1,2))
df3.loc[(1), 'Type'] == 'C'
当您连接时,您可以分配 df 的键。这将创建一个多索引,其中键分隔连接的 df。然后,当您使用.loc
with 键时,您可以(
在键周围使用来呼叫组。在上面的代码中,我们将 df1 的所有类型(键为 1)更改为 C。
推荐阅读
- mybatis - Mybatis resultMap中如何使用Multiple collection
- linux - 文件未排序后排序
- java - 从数据库加载 netflix zuul 路由值
- python - Gstreamer、Docker、udpsrc、OpenCV、Python... 不工作
- laravel - Laravel 日志异常
- vba - VBA - 如果单元格值更改,则移动行
- javascript - 使用 sequelize 获取字段中具有唯一值的所有行
- javascript - 检查并匹配文件扩展名
- flutter - Flutter:如何在不使用标签栏视图的情况下使用导航器创建标签栏?
- gitlab - 在 GitLab 中更改导航主题颜色