Python 基于其他单元格值向单元格添加数据
在一个大的数据框中,我有一大组具有各种名称和源的数据 可复制数据 名字姓氏来源 马特·琼斯 詹姆斯·史密斯YY 史密斯威斯顿机场 威斯顿超级酒店 马特琼斯YY 威斯顿超级酒店 抄送: df=pd.read_剪贴簿sep='\\s+' 数据如下:Python 基于其他单元格值向单元格添加数据,python,python-3.x,pandas,Python,Python 3.x,Pandas,在一个大的数据框中,我有一大组具有各种名称和源的数据 可复制数据 名字姓氏来源 马特·琼斯 詹姆斯·史密斯YY 史密斯威斯顿机场 威斯顿超级酒店 马特琼斯YY 威斯顿超级酒店 抄送: df=pd.read_剪贴簿sep='\\s+' 数据如下: +------------+-----------+--------+ | First Name | Last Name | Source | +------------+-----------+--------+ | Matt | Jone
+------------+-----------+--------+
| First Name | Last Name | Source |
+------------+-----------+--------+
| Matt | Jones | XX |
| James | Smith | YY |
| Smith | Weston | AA |
| Weston | Supermare | CC |
| Matt | Jones | YY |
| Weston | Supermare | FF |
+------------+-----------+--------+
我需要它看起来像这样:
+------------+-----------+--------+
| First Name | Last Name | Source |
+------------+-----------+--------+
| Matt | Jones | XX, YY |
| James | Smith | YY |
| Smith | Weston | AA |
| Weston | Supermare | CC, FF |
+------------+-----------+--------+
我可以使用以下方法使重复数据消除过程正常工作:
Conn_df = Conn_df.drop_duplicates(subset=['First Name', 'Last Name'])
但是,在执行重复数据消除之前,我需要在同一行上记录相同数据的所有源 您可以使用按列名和姓对数据帧进行分组,然后在源列上应用agg函数join
使用:
这张照片是:
First Name Last Name Source
0 James Smith YY
1 Matt Jones XX, YY
2 Smith Weston AA
3 Weston Supermare CC, FF
您可以使用按列“名”和“姓”对数据帧进行分组,然后在源列上应用agg函数join
使用:
这张照片是:
First Name Last Name Source
0 James Smith YY
1 Matt Jones XX, YY
2 Smith Weston AA
3 Weston Supermare CC, FF
这样做:
print(df.groupby(by=['FirstName', 'LastName']).agg(lambda x: ', '.join(x)))
FirstName LastName
James Smith YY
Matt Jones XX, YY
Smith Weston AA
Weston Supermare CC, FF
这样做:
print(df.groupby(by=['FirstName', 'LastName']).agg(lambda x: ', '.join(x)))
FirstName LastName
James Smith YY
Matt Jones XX, YY
Smith Weston AA
Weston Supermare CC, FF
这看起来不错,但如果不手动重新键入所有内容,就几乎不可能回到数据帧中。请注意,这看起来不错,但如果不手动重新键入所有内容,几乎不可能返回到数据帧。您好,谢谢您提出的解决方案。使用上面的方法,源字段的每一行都填充为“无”。您好,感谢您提出的解决方案。使用上述方法,源字段的每一行都填充为“无”。