如何使用熊猫在特定列中的csv文件中查找特定单词
Posted
技术标签:
【中文标题】如何使用熊猫在特定列中的csv文件中查找特定单词【英文标题】:How to find a particular word in a csv file in a particular column with pandas 【发布时间】:2022-01-08 09:10:25 【问题描述】:我想在 csv 文件中搜索特定单词并计算有多少单词,我正在使用 pandas 使用 usecols 获取特定列并使用 str.find 搜索该单词,但它只是返回整列
def read(searchitem):
lst = ["author"]
df=pd.read_csv('data.csv',usecols=lst)
df = df["author"].str.find(searchitem)
print(df)
read('IMoRT')
【问题讨论】:
【参考方案1】:我实际上会导入 csv 并使用 DictReader。代码如下所示:
import csv
with open('csv-file.csv', newline='') as csv_file:
csv_reader = csv.DictReader(csv_file)
word_count = 0
for line in csv_reader:
if line['author'] == searchitem:
word_count += 1
【讨论】:
【参考方案2】:试试这个:
df["author"].str.count(searchitem).sum()
编辑:
据我了解,您对两个非常不同的事物使用相同的变量名。它有效,但最佳做法不推荐使用。
def read(searchitem):
lst = ["author"]
df=pd.read_csv('data.csv',usecols=lst)
countWord = df["author"].str.count(searchitem).sum()
print(countWord)
【讨论】:
谢谢你,这才有效以上是关于如何使用熊猫在特定列中的csv文件中查找特定单词的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 CSVHelper 更新现有 CSV 文件中特定列中的值?