繁体   English   中英

我们如何计算数据框列中的重复数据并将结果分配给同一数据框中的新列?

[英]How can we count dupes in a column of a data frame and assign the results to a new column in the same data frame?

我有几个地址,在数据帧的一列中,重复,我想计算欺骗。 我尝试了以下代码。

import pandas as pd
df = pd.read_csv('C:\\my_path\\lat_lon.csv')
df['count'] = df.groupby(['Street'])['Street'].count()
df['count'] = df.groupby(['Street'])[['Street']].count()

这给了我“计数”列中的所有 NAN 值。 所以,我接下来尝试了这个。

df = df.groupby(['Street']).size().reset_index(name='count')

这给了我“街道”和“计数”,但所有其他列都被删除了。 我试图对数据进行透视,并且计数是正确的,但我真的希望在原始数据框中的新列中进行计数。 在 Excel 中,这将是一个“countif”函数。

这个怎么样

from collections import Counter
data = (random.choice(["221B Baker Street", "10 Downing Street", "Arc de Triomphe - Champs-Élysées"]) for _ in range(50))
df = pd.DataFrame(data={"addresses":data})
Counter(df["addresses"])

它给

Counter({'221B Baker Street': 22, 'Arc de Triomphe - Champs-Élysées': 15, '10 Downing Street': 13})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM