在数据框中搜索列中的字符串值

时间:2018-12-24 04:47:17

标签: python-3.x pandas dataframe

我正在通过查看concept的字符串值来查看当前数据帧中的一行是否已在新数据帧内。

但我知道

  

“ TypeError:'Series'对象是可变的,因此不能被散列。”

我尝试了其他方法也会导致不同的错误,我们将不胜感激!

df = pd.read_csv('holder.csv', names = ['concept','frequency'])

newdf = pd.DataFrame(columns = ['concept','frequency'])
for index1, row1 in df.iterrows():
    if newdf.empty:
        row1 = row1.fillna(1)
        newdf = newdf.append(row1,ignore_index=True)
    elif newdf(newdf.concept == row1[0]):
        row1 = row1.fillna(1)


  newdf = newdf.append(row1,ignore_index=True)

edit1: 我试图分离holder.csv(包含字符串值和重复项),以使最终结果是另一个csv文件,其中每个条目都是唯一的,并存储字符串值的频率(即重复项被添加到频率中)< / p>

holder.csv

  1. 决策制定
  2. 权威位置
  3. 位置
  4. 决策制定

end.csv

  1. 决策制定,2
  2. 权威位置1
  3. 位置,1

1 个答案:

答案 0 :(得分:0)

IIUC,仅通过groupby

即可实现结束csv

假设您的列名是A

    A
0   decision making
1   authoritative location
2   location
3   decision making

>>df.groupby('A').size()


A
authoritative location    1
decision making           2
location                  1