gpt4 book ai didi

python - pd.cut 类别为 plt.xticklabels

转载 作者:行者123 更新时间:2023-12-01 02:13:54 25 4
gpt4 key购买 nike

我有一些数据,我正在使用 pd.cut 将它们分箱

import pandas as pd
import matplotlib.pyplot as plt

garbage = 50*np.random.rand(100)

g=pd.DataFrame(data=garbage,columns=['a'])
g['a_binned'] = pd.cut(g['a'],bins=np.arange(0,100,5),labels=False)
g['a_binned_labelled'] = pd.cut(g['a'],bins=np.arange(0,100,5),labels=True)

然后我分组并数数

g_binned=g.groupby(['a_binned'])['a'].count()

plt.bar(g_binned.index,g_binned.cumsum().values)

我希望我的 xticklabels 是值为 g['a_binned_labelled'].index 的字符串,例如 '(10, 15]', '(25, 30]'

我想避免使用 pandas 绘图函数。

最佳答案

由于剪切索引是按升序排序的,因此可以根据一系列数字绘制条形图,并将刻度标签设置为索引的值。这确保了条形图的排序正确。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

garbage = 50*np.random.rand(100)

g=pd.DataFrame(data=garbage,columns=['a'])
g['a_binned'] = pd.cut(g['a'],bins=np.arange(0,100,5), )
g_binned=g.groupby(g['a_binned'])['a'].count()


plt.bar(range(len(g_binned)),g_binned.cumsum().values)
plt.xticks(range(len(g_binned)), g_binned.index, rotation=90)

plt.gcf().autofmt_xdate(rotation=90, ha="center")
plt.show()

enter image description here

关于python - pd.cut 类别为 plt.xticklabels,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48528543/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com