python - 我如何找到字符串中单词的出现次数和出现百分比;如何修复错误

标签 python counter find-occurrences

基本上我有这个我上传到 python 的 excel 文件,我创建了一个新列来标识每行中是否有一个词,如果它在一行中,那么它会出现为真,如果不是假。所以我有这个新专栏,我试图找出真假百分比。稍后我将尝试制作一个表格来区分所有的真假。我首先需要百分比方面的帮助。我是一个初学者,就像我上周开始的那样

所以对于百分比问题,我决定首先创建一个代码来计算列中单词“true”和“false”的出现次数,然后我会做一些数学运算来获得百分比,但我没有过去计算发生的次数。以下代码的乘积为 0,这不是应该显示的内容。

import pandas as pd
import xlrd
df = pd.read_excel (r'C:\New folder\CrohnsD.xlsx')
print (df)
df['has_word_icd'] = df.apply(lambda row: True if 
row.str.contains('ICD').any() else False, axis=1)
print(df['has_word_icd'])
#df.to_excel(r'C:\New folder\done.xlsx')
test_str = "df['has_word_icd']"
counter = test_str.count('true')
print (str(counter))

这是更新后的版本,它仍然给我 0,我无法更改 df['has_word_icd'] 因为这就是最初引入变量的方式

import pandas as pd
import xlrd
df = pd.read_excel (r'C:\New folder\CrohnsD.xlsx')
print (df)
df['has_word_icd'] = df.apply(lambda row: True if 
row.str.contains('ICD').any() else False, axis=1)
print(df['has_word_icd'])
#df.to_excel(r'C:\New folder\done.xlsx')

test_str = (df['has_word_icd'])

count = 0
for i in range(len(test_str)):
   if test_str[i] == 'true':
        count += 1
  i += 1

print(count)

两者都给了我相同的结果

请帮帮我,这两个代码的输出都是“0”,不应该是这样。有人帮我得到一个代码,它直接给我“真”和“假”的百分比

最佳答案

这是一种使用列表推导来实现的方法。对于百分比,您可以使用 np.mean() 函数:

import numpy as np

df= pd.DataFrame({'a' : ['hello icd', 'bob', 'bob icd', 'hello'],
                  'b' : ['bye', 'you', 'bob is icd better', 'bob is young']})

df['contains_word_icd'] = df.apply(lambda row :
                                   any([True if 'icd' in row[x] else False for x in df.columns]), axis=1)
percentage = np.mean(df['contains_word_icd'])
# 0.5

输出:

           a                  b  contains_word_icd
0  hello icd                bye               True
1        bob                you              False
2    bob icd  bob is icd better               True
3      hello       bob is young              False

关于python - 我如何找到字符串中单词的出现次数和出现百分比;如何修复错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56936798/

相关文章:

javascript - 如何查找表格列中数字的出现次数?

python - 无法从 read_csv 索引 Pandas 数据框中的日期

作为基类一部分的 Python 装饰器不能用于装饰继承类中的成员函数

python - Keras 模型仅适用于 Sigmoid 激活

java - 计算字符串中的字符出现次数 - Java

notepad++ - 在Notepad++中进行智能突出显示时显示出现次数

python - 如何使用 PyQt5 的 QWebEngineView 处理 "render"HTML

javascript - 当用户刷新网页时阻止表单提交

windows-services - 您如何获得 Windows 服务的当前故障计数

java - 如何在日志中显示 Dropwizard Activity 请求