gpt4 book ai didi

python - 获取 pandas 中某一列的值

转载 作者:太空宇宙 更新时间:2023-11-03 14:55:34 24 4
gpt4 key购买 nike

我想精确计算 pandas 中某一列的值并绘制它们,我这样编码:

traffic = pd.read_csv('traffic.csv')
traffic.columns = ['X', 'Y', 'Zone', 'Potential']
X = traffic.iloc[0:579, 0:1]['X']
Y = traffic.iloc[0:579, 1:2]['Y']
Z = traffic.iloc[0:579, 3:4]['Potential']

fig = plt.figure()
for x, y, z in zip(list(X), list(Y), list(Z)):
plt.plot(x, y, 'ro', markersize = Z, alpha = 0.5)
plt.show()

并得到了 TypeError: cannot convert the series to <class 'float'> 。现在看来它给了我一个带有尾部或其他东西的数据(如果我 print() 它们在底部会有一些 Name: X, dtype:float64 ),所以 for 失败了循环。

那么如何获取列的值呢?

数据是这样的(从 .csv 文件复制):

413 359 A   1.7
403 343 A 2.1
383.5 351 A 2.2
381 377.5 A 1.7
339 376 A 2.1
335 383 A 2.5
317 362 A 2.4
334.5 353.5 A 2.4
333 342 A 2.1
282 325 A 1.6
...

最佳答案

您可以使用 pandas 的 matplotlib 包装器

traffic.plot(x='X', y='Y', style='ro', markersize='Potential', alpha=0.5)
plt.show()

编辑:

显然,pandas 包装器不允许标记大小可变。

不过,您可以使用标准散点图:

plt.scatter(df['X'],df['Y'], s=df['Potential'])

关于python - 获取 pandas 中某一列的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45610021/

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