Pandas创建包含行计数的列

时间:2014-08-04 18:17:30

标签: python pandas

如何在熊猫中复制此查询?

SELECT (SELECT COUNT(1) FROM table t1 WHERE t1.full_name = t2.full_name) FROM table t2;

我想计算具有相同值的行数并将值保存到数据框中。

我到现在为止尝试的是

df.full_name.values_count() 

这会返回一个唯一值列表,然后我尝试将其合并到原始数据库(使用df.merge),但没有运气。

1 个答案:

答案 0 :(得分:1)

首先,将值计数(这是一个系列)包装在DataFrame中。

counts = pd.DataFrame(df['full_name'].value_counts(), columns=['num_unique'])

然后,合并,留在原始列上,然后在索引上。

df = df.merge(counts, left_on=['full_name'], right_index=True)