【问题标题】:Plotting from dataset in Python在 Python 中从数据集绘图
【发布时间】:2017-03-14 04:49:51
【问题描述】:

这一定很简单,但我不知道该怎么做。我正在尝试绘制我的数据集中存在的数据。

下面是我的代码,

import pandas as pd
import matplotlib.pyplot as plt

dataset = pd.read_csv('TipsReceivedPerMeal.csv')
plt.scatter(dataset[0],dataset[1])
plt.show()

我的 CSV 文件中的数据是一些随机数据,它指定服务员在某一天收到的小费。

CSV 格式的数据

MealNumber  TipReceived
1                    17
2                    10
3                    5
4                    7
5                    14
6                    25

提前感谢您的帮助。

【问题讨论】:

  • dataset.plot(x='MealNumber', y = 'TipReceived' ..., kind='scatter 怎么样)。你可能想看看 searborns facetgrid

标签: python pandas matplotlib


【解决方案1】:

另一种选择是替换 plt.scatter(dataset[0],dataset[1])

plt.scatter(dataset[[0]],dataset[[1]])

【讨论】:

    【解决方案2】:

    有几个选项,一些已经在之前的答案中提到过,

    1. plt.scatter(dataset['MealNumber'],dataset['TipReceived'])(@Ankit Malik 提到)
    2. plt.scatter(dataset.iloc[:,0],dataset.iloc[:,1])
    3. plt.scatter(dataset[[0]],dataset[[1]])(@Miriam 提到)

    为了让这些人使用问题中的数据,应该使用delim_whitespace=True 参数,否则读入将不起作用:

    dataset = pd.read_csv('TipsReceivedPerMeal.csv', delim_whitespace=True)
    

    【讨论】:

      【解决方案3】:

      只需替换: plt.scatter(dataset[0],dataset[1])

      有: plt.scatter(dataset['MealNumber'],dataset['TipReceived'])

      在 Pandas 中,列可以通过名称或 iloc 的列号引用。

      【讨论】:

      • 请注意dataset.iloc[0] 不起作用,您需要dataset.iloc[:,0]
      • @ImportanceOfBeingErnest,感谢您的评论。我已经更正了。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-06
      • 2022-11-17
      • 2021-07-07
      • 2016-01-23
      • 1970-01-01
      • 1970-01-01
      • 2020-05-19
      相关资源
      最近更新 更多