【发布时间】:2019-07-03 13:30:08
【问题描述】:
我有 2 个数据框。一个包含学生批次详细信息,另一个包含分数。我想加入 2 个数据框。
Dataframe1 包含
+-------+-------+-------+--+
| s1 | s2 | s3 | |
+-------+-------+-------+--+
| Stud1 | Stud2 | Stud3 | |
| Stud2 | Stud4 | Stud1 | |
| Stud1 | Stud3 | Stud4 | |
+-------+-------+-------+--+
Dataframe2 包含
+-------+-------+----------+--+
| Name | Point | Category | |
+-------+-------+----------+--+
| Stud1 | 90 | Good | |
| Stud2 | 80 | Average | |
| Stud3 | 95 | Good | |
| Stud4 | 55 | Poor | |
+-------+-------+----------+
我正在尝试将每个学生的标记映射到同一数据集中。
+-------+-------+-------+----+----+----+
| Stud1 | Stud2 | Stud3 | 90 | 80 | 95 |
| Stud2 | Stud4 | Stud1 | 80 | 55 | 90 |
| Stud1 | Stud3 | Stud4 | 90 | 95 | 55 |
+-------+-------+-------+----+----+----+
我尝试了下面的代码,但它正在一个一个地替换值。
s = df3['p1'].map(dfnamepoints.set_index('name')['points'])
df4 = df3.drop('p1', 1).assign(points = s)
【问题讨论】:
-
如果这与熊猫有关,您应该添加适当的标签。
标签: python pandas dataframe join mapping