python - Pandas - value_counts() 中消失的值

标签 python pandas

I started this question yesterday and have done more work on it.

谢谢@AMC,@ALollz

我有一个手术事件数据的数据框,有 58 列和 200,000 条记录。其中一列是治疗专业,每一行对应于一次患者的遭遇。我想看看医学专业的相对贡献。一列是“TRETSPEF”=treatment_specialty。我已经使用 `pd.read_csv('csv, usecols = ['TRETSPEF') 导入该系列。

df
    TRETSPEF
0   150
1   150
2   150
3   150
4   150
... ...
218462  150
218463  &
218464  150
218465  150
218466  218`


最常见的治疗专业是神经外科(代码 150)。所以问题就在这里。当我申请时 .value_counts 我得到了 150 代码(和 218 代码)的两组

df['TRETSPEF'].value_counts()
150    140411
150     40839
218     13692
108     10552
218      4143
        ...  
501         1
120         1
302         1
219         1
106         1
Name: TRETSPEF, Length: 69, dtype: int64

那里有一些“&”(454),所以我想知道它们不是整数这一事实是否会把事情搞乱,所以我将它们更改为空值,并运行值计数。


df['TRETSPEF'].str.replace("&", "").value_counts()
150    140411
218     13692
108     10552
800       858
110       835
811       692
191       580
323       555
          454
100       271
400       116
420        47
301        45
812        38
214        24
215        23
180        22
300        17
370        15
421        11
258        11
314         5
422         4
260         4
192         4
242         4
171         4
350         2
307         2
302         2
328         2
160         1
219         1
120         1
107         1
101         1
143         1
501         1
144         1
320         1
104         1
106         1
430         1
264         1
Name: TRETSPEF, dtype: int64

所以现在我似乎通过将 '&' 更改为 null 丢失了第二组 150 - 大约 40000 条记录。不过,空值仍然出现在 .value_counts 中。该系列的长度已从 69 减少到 45。 我尝试去除空格 - 没有区别。不确定要运行哪些测试来了解为什么会发生这种情况。我觉得这一定是数据造成的。

最佳答案

这 100% 是数据清理问题。尝试force the column to be numeric.

pd.to_numeric(df['TRETSPEF'],errors='coerce').value_counts()

关于python - Pandas - value_counts() 中消失的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60158910/

相关文章:

Python XLRD 错误 : formula/tFunc unknown FuncID:186

python - 检测是否提供了可选参数(可能包括 None)

Python:list() 是否就位?

python-3.x - "BokehUserWarning: ColumnDataSource' s 列的长度必须相同”

python - 谷歌应用引擎: HTTP Error 400: Bad Request

python - 在 python 中屏蔽然后粘贴两个图像

Python-基于UUID的分片

python - Pandas 从列名称不同的行中选择数据

python - 获取 pandas 数据框中每一列的唯一值 - 帮助我创建更小、更易于管理的数据框来执行指标

python - 比较两个数据框