【发布时间】:2017-07-08 01:14:17
【问题描述】:
我是熊猫和散景的新手,我正在尝试从熊猫数据框创建散点图。但是,我不断收到以下错误:
new_data[colname] = df[colname].tolist()
AttributeError: 'DataFrame' object has no attribute 'tolist'
使用来自 bokeh 的虚拟数据(来自 bokeh.sampledata.iris 导入花作为数据),分散效果很好。
type tsneX tsneY +50.000 columns
0 A 53.828863 20.740931
1 B 57.816909 18.478468
2 A 55.913429 22.948167
3 C 56.603005 15.738954
scatter = Scatter(df, x='tsneX', y='tsneY',
color='type', marker='type',
title='t-sne',
legend=True)
编辑: 我没有使用 tolist(),但 Bokeh 的 Scatter() 确实会产生以下错误。
【问题讨论】:
-
您能否发布您的数据样本,例如:
print(new_data.head(5))并解释您的X和Y列是什么? -
它有超过 50.000 列,所以这不是很容易做到的。但是我通过 df = df.loc[:, ('type', 'tsneX', 'tsneY')] 让它工作。我不知道这是如何解决问题的,但它确实有效..
-
不清楚 - 散景有什么问题?
-
AttributeError: 'DataFrame' object has no attribute 'tolist' 是 Scatter() 的结果,所以我认为是 Bokeh 问题。但是,通过删除冗余列它可以工作