我有一个形状为 ~ [200K, 40] 的熊猫数据框。数据框有一个分类列(众多列之一),有超过 1000 个唯一值。我可以使用以下方法可视化每个此类唯一列的值计数:
df['column_name'].value_counts()
Run Code Online (Sandbox Code Playgroud)
我现在如何将价值观与:
您可以从索引中提取要屏蔽的值,value_counts然后使用replace 将它们映射到“杂项” :
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(0, 10, (2000, 2)), columns=['A', 'B'])
frequencies = df['A'].value_counts()
condition = frequencies<200 # you can define it however you want
mask_obs = frequencies[condition].index
mask_dict = dict.fromkeys(mask_obs, 'miscellaneous')
df['A'] = df['A'].replace(mask_dict) # or you could make a copy not to modify original data
Run Code Online (Sandbox Code Playgroud)
现在,使用 value_counts 会将低于阈值的所有值分组为杂项:
df['A'].value_counts()
df['A'].value_counts()
Out[18]:
miscellaneous 947
3 226
1 221
0 204
7 201
2 201
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2040 次 |
| 最近记录: |