我有一个如下的数据框。“feature1”,“feature2”和“feature3”是独立的特征。这些特征中的可能值仅为1,2,3,4。我需要找到大小,按每个特征的值分组。下面显示的是我现在是如何做的,分别为每个特征。有没有一种方法可以在一个步骤或更优化的方式中完成它?谢谢。
import pandas as pd
df = pd.DataFrame({'State' : ['AZ', 'FL', 'AZ', 'FL', 'FL', 'FL', 'AZ', 'FL', 'AZ', 'AZ', 'FL', 'AZ', 'FL', 'AZ', 'AZ'],
'feature1' : [1, 3, 2, 2, 4, 3, 3, 1, 2, 4, 3, 1, 1, 1, 1],
'feature2' : [1, 2, 1, 2, 3, 2, 4, 1, 2, 4, 3, 1, 1, 1, 1],
'feature3' : [1, 4, 1, 2, 1, 4, 3, 3, 2, 4, 3, 1, 1, 1, 1],})
(
df
.groupby(['State', 'feature1'])
['feature1']
.size()
.to_frame('N')
)
feature1的输出:
1条答案
按热度按时间sr4lhrrt1#
选项1:
melt
+value_counts
结果
选项2:
melt
+crosstab
结果