Python 获取表中列的值
我想精确计算熊猫中一列的值并绘制它们,我这样编码:Python 获取表中列的值,python,pandas,Python,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,
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()
并得到一个类型错误:无法将序列转换为。现在,它似乎给了我一个带有尾部的数据或其他东西(如果我print()
它们在底部,则会有一些Name:X,dtype:float64
),因此for
循环失败
那么我怎样才能得到一列的值呢
数据如下(从.csv
文件复制):
您可以使用pandas的matplotlib包装器
traffic.plot(x='X', y='Y', style='ro', markersize='Potential', alpha=0.5)
plt.show()
编辑:
显然,pandas包装器不允许markersize是变量
但是,您可以使用标准散点图:
plt.scatter(df['X'],df['Y'], s=df['Potential'])
Idk。。。它给了我ValueError:无法将字符串转换为float:'Potential'
try:traffic['Potential']=traffic['Potential']。aType(float)显然,makersize不接受可变大小。您可以修改大小,也可以使用标准散点图。
plt.scatter(df['X'],df['Y'], s=df['Potential'])