从数据帧中获取数据时,我正在使用一列,并使用.unique()
函数从该列中获取唯一值,并将这些值存储在np.array
中。同样,对于该列,我还使用.value_counts()
函数获取唯一值的计数并将其放入单独的数组中。当我得到两个数组时,我无法匹配它们的索引。
x=np.array(df['Fruits'].unique())
y=np.array(df['Fruits'].value_counts())
实际结果:
array1=(['Apple','Mango','Orange']) . array2=([10,4,17])
,其中苹果为17个,芒果为10个,橙色为4个。预期结果array1=(['Apple','Mango','Orange']) . array2=([17,10,4])
答案 0 :(得分:1)
改为使用分组方式
photoBrowser:titleForPhotoAtIndex
来自文档:
value_count
:生成的对象将按降序排列,因此第一个元素是出现频率最高的元素。
unique
:按出现顺序返回唯一性。
因此df = pd.DataFrame({'Fruits': ['Mango']*15+['Apple']*10+['Orange']*5 })
adf = df.groupby(['Fruits']).size()
x = adf.index.values
y = adf.values
和value_count
之间的顺序不一致
答案 1 :(得分:0)
value_count将返回一系列计数,这些计数由它们所计数的值索引。
value_series = df['Fruits'].value_counts(sort=False)
x=np.array(value_series.index)
y=np.array(value_series.values)