如何从要打印的数据框中选择列而不寻址其nam

2024-04-24 12:29:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要从一个列中绘制数据,并且我不想使用它的名称

问题是,我想让用户输入以定制分析,这意味着我将始终为列获取不同的名称,因此必须手动更改绘图的名称。有什么可能的解决方案使它自动化吗

The original code:

我试过了

stocks_ret.iloc[0,1].plot(figsize=(16,8), grid=True)

我也尝试过使用.iloc,但没有成功

AttributeError: 'numpy.float64' object has no attribute 'plot'


Tags: 数据用户名称true绘图plot绘制手动
1条回答
网友
1楼 · 发布于 2024-04-24 12:29:48

试着改变

stocks_ret.iloc[0,1].plot(figsize=(16,8), grid=True)

stocks_ret.iloc[:,1].plot(figsize=(16,8), grid=True)

说明

iloc使用语法my_dataframe.iloc[row_range, column_range]从数据帧中选择要提取的行和列索引。例如,通过编写my_dataframe.iloc[0:2, 0:4],您要求从第一行到第三行提取值,从第一列到第五列提取值(请记住,在Python中,索引从0开始)

类似地,通过写my_dataframe.iloc[2, 3],您可以询问第三行第四列my_dataframe中的特定值。这就是您在代码中所做的。由于它返回单个值,而不是pandas series/dataframe,因此它没有plot属性,从而导致您看到的错误

为了选择整列,需要传递一个与整列长度相等的范围,而不是单个索引。可以使用:表示法作为一种简写法来精确地实现这一点,以便my_dataframe.iloc[:, 3]返回第四列中所有值的序列

相关问题 更多 >