【问题标题】:price Histogram in python pandas [duplicate]python pandas中的价格直方图[重复]
【发布时间】:2022-10-23 12:28:38
【问题描述】:

我有下表显示了该项目的项目和价格。

    item       CAR_PRIC1      Car_PRICE2
0   H1         17400.00       18400.00
1   H2         35450.00       27400.00
2   H3         55780.00       57400.00
3   H4         78500.00       37400.00
4   H5         25609.55       77400.00
5   H6         96000.00       97400.00

我如何绘制直方图以在 Y 轴上显示不同价格的类别,并在 X 轴上显示所有合约中有多少百分比落在这些价格类别中。 如下:

【问题讨论】:

  • 你有多个问题。第一个是如何将数据框融合成一个长格式(使用df.melt(...)。第二个是如何对数据进行分箱(使用pd.cut(...))。

标签: python pandas matplotlib seaborn


【解决方案1】:

seaborn displot 很简单(编辑您的 df 以使情节更具可读性):

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

data = {
    'item': {0: 'H1', 1: 'H2', 2: 'H3', 3: 'H4', 4: 'H5', 5: 'H6'},
    'CAR_PRICE1': {0: 7400.0, 1: 135450.0, 2: 5780.0, 3: 78500.0, 4: 25609.55, 5: 126000.0},
    'CAR_PRICE2': {0: 78400.0, 1: 27400.0, 2: 37600.0, 3: 37400.0, 4: 77400.0, 5: 97400.0}
    }

df = pd.DataFrame(data)

sns.displot(data=df[['CAR_PRICE1', 'CAR_PRICE2']])
plt.show()

输出:

如果你想要百分比而不是计数:

sns.displot(data=df[['CAR_PRICE1', 'CAR_PRICE2']], stat='percent')

【讨论】:

    猜你喜欢
    • 2013-04-27
    • 2021-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多