【发布时间】:2019-02-16 10:29:41
【问题描述】:
这是我正在使用的 Pandas DataFrame 的一部分:
all_samples = pd.DataFrame({'Group': {0: 'One', 3: 'One', 4: 'One', 5: 'One', 7: 'One'},
'Sample': {0: 1, 3: 1, 4: 2, 5: 2, 7: 2},
'VAF': {0: 0.0009577524741938917,
3: 0.0006907269901571404,
4: 0.001246660730186999,
5: 0.00128,
7: 0.0012338062924120913}})
如果我尝试将数据绘制为散点图,一切正常:
sns.catplot(x="Group", y="VAF", hue="Sample", dodge=True,
palette="pastel", data=all_samples.head(20));
但是当我尝试将数据绘制为小提琴或箱线图时:
sns.catplot(x="Group", y="VAF", hue="Sample", kind='violin',
palette="pastel", data=all_samples.head(20));
我收到 ValueError: object arrays are not supported 错误。我的 DataFrame 结构是否糟糕?
更新:
因为它对其他人有用,所以我尝试了我发布的示例,它对我有用。然后当我使用完整的 DataFrame 时;我将它转换为字典,然后转换为 DataFrame,现在它工作得很好。 temp = pd.DataFrame(all_samples.to_dict()) 然后像这样绘制:sns.violinplot(x='Group', y='VAF', hue='Sample', palette='pastel', data=temp)。不幸的是,我现在不知道如何发布我的原始数据以了解出了什么问题。这对任何人都有意义吗?
【问题讨论】:
-
我没有收到错误我正在使用
sns.__version__ == '0.9.0' -
关于数据的调试,您可以尝试数据的不同子集,看看这是否会有所改变。如果只是某些数据行导致错误,您可以隔离一个足够小的子集以在问题中提供。