【发布时间】:2020-01-29 05:52:42
【问题描述】:
我有带有计数的数据框列的重复值,但我需要在整个列中找到特定重复值的索引。 查找示例数据帧的索引,因为索引不是唯一的
In[1]:
data = [['Center for epidemiological studies depression (CESD)','a'], ['Center for epidemiological studies depression (CESD)','b'], ['Social Causes of Depression','b'], ['Social Causes of Depression','b']]
df = pd.DataFrame(data,columns=['Column1','Column2'])
Out[2]:
print (df)
Column1 Column2
0 Center for epidemiological studies depression (CESD) a
0 Social Causes of Depression b
1 Center for epidemiological studies depression (CESD) a
1 Social Causes of Depression b
2 Depressive Realism c
In[1]:
df_new = pd.DataFrame(df['Column1'].value_counts().values, index=df['Column1'].value_counts().index, columns=['Count'])
df_new.head()
Out[2]:
Column1 Count
Center for epidemiological studies depression (CESD) 2
Social Causes of Depression 2
Depressive Realism 1
在这里我得到了列行的重复值,但我也想要特定重复引用的索引,但无法获取。
Here is the original duplicated values of reference column
此外,使用groupby 会产生奇怪的结果。这是actual original data values 和我在using groupby function 之后得到的。看数据,'0th' 索引是参考栏中有参考文献的第一篇论文。 我认为由于索引对于参考列(原始数据框)不是唯一的,groupby 给出了奇怪的结果。
Expected output:
Column1 index
0 Center for epidemiological studies depression (CESD) [2][3]
1 Social Causes of Depression [1][4]
2 Depressive Realism [5]
【问题讨论】:
-
dataframe.duplicated() 完全按照您的描述进行。 “返回表示重复行的布尔系列,可选择仅考虑某些列。”到目前为止,您尝试过什么?
-
请提供您希望看到的输出。
-
@ALollz 你看过原始数据框吗(问题中给出了链接)?我已经提到索引不是唯一的,因为原始数据中的引用列对于特定列有很多值。
-
@piRSquared 我希望它有所帮助。但请查看原始数据框 (imgur.com/QONxLNr) 和所有其他链接。
-
我认为链接应该被编辑掉。您在问题中提供了示例数据,并且由于链接包含不同的数据,我认为它们只会混淆和混淆问题。另外你确定预期的输出,我想你可能已经交换了一些值?