Python 在Dataframe中打印列名和值

Python 在Dataframe中打印列名和值,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,这个问题的最终目标是使用数据帧为图形绘制X和Y 我有这样一个数据帧: Open High Low Close Volume stock symbol Date 2000-10-19 1.37 1.42 1.24 1.35 373590000 AAPL 2000-10-2

这个问题的最终目标是使用数据帧为图形绘制X和Y

我有这样一个数据帧:

             Open    High     Low   Close     Volume       stock symbol
Date                                                              
2000-10-19    1.37    1.42    1.24    1.35  373590000         AAPL
2000-10-20    1.36    1.46    1.35    1.39  195836200         AAPL
2000-10-23    1.39    1.49    1.39    1.46  129851400         AAPL
2000-10-24    1.48    1.49    1.34    1.35  192711400         AAPL
2000-10-25    1.36    1.37    1.30    1.32  163448600         AAPL
2000-10-26    1.34    1.42    1.25    1.32  178110800         AAPL
2000-10-27    1.35    1.37    1.28    1.33  181242600         AAPL
2000-10-30    1.37    1.42    1.34    1.38  152558000         AAPL
我正在尝试绘制
Date
Open
的对比图。我知道有一种简单的绘图方法,但我将把这个概念应用到更大的数据帧中,并且想知道如何“长期”地进行

我所尝试的:

print(一些文件['Open'])

结果:

 Date
    2000-10-19      1.37
    2000-10-20      1.36
    2000-10-23      1.39
    2000-10-24      1.48
    2000-10-25      1.36
    2000-10-26      1.34
问题:

日期似乎是我的索引,但列标题“Open”未显示

问题:

如何在将
'Open'
作为标题的同时打印上述数据帧。然后使一些值
x
=
Date
列和一些值
y
=
打开
的值

“预期代码正常工作”:

我在想

print([some_DF['Open'] headers = 'date','open')
x = some_DF['Date'] #So that this becomes first column of dataframe
y = some_DF['Open'] #So that this becomes second column of dataframe

您可以在数据框上
reset_index
,然后打印由两列组成的子集数据框

>>> df
            a  b
Date            
2000-10-19  1  3
2000-10-20  2  4
2000-10-21  3  5
2000-10-22  4  6
2000-10-23  5  7
>>> print(df.reset_index()[['Date', 'a']])
        Date  a
0 2000-10-19  1
1 2000-10-20  2
2 2000-10-21  3
3 2000-10-22  4
4 2000-10-23  5
正如IanS所提到的,你不应该担心熊猫的产量。日期是一个索引并打开一列。print语句中的差异说明了这种区别

编辑:


df[[列名列表]]
df.loc[:,[列名列表]]
相同。它提供了一个列列表,用于将原始数据框子集。

您可以在数据框上重置索引,然后打印由两列组成的子集数据框

>>> df
            a  b
Date            
2000-10-19  1  3
2000-10-20  2  4
2000-10-21  3  5
2000-10-22  4  6
2000-10-23  5  7
>>> print(df.reset_index()[['Date', 'a']])
        Date  a
0 2000-10-19  1
1 2000-10-20  2
2 2000-10-21  3
3 2000-10-22  4
4 2000-10-23  5
正如IanS所提到的,你不应该担心熊猫的产量。日期是一个索引并打开一列。print语句中的差异说明了这种区别

编辑:


df[[列名列表]]
df.loc[:,[列名列表]]
相同。它提供了一个列列表,用于将原始数据框子集。

数据文件是什么样的?前10行就可以了。我很好奇您是如何读取该数据文件的,以及原始文件是什么样子的您是否尝试过
打印(some_DF[['Open']])
?@m.Klugerford这与我想要的非常接近。但是,“日期”和“打开”标题看起来位于不同的行上。你能解释一下double
[[[
]]
在做什么吗?@Tuan333这是来自雅虎财经的熊猫数据阅读器。很有趣,这是两天来我第三次看到有人担心熊猫的产出。你有具体的原因吗?重要的是你想要的图形…数据文件是什么样的?前10行就可以了。我很好奇您是如何读取该数据文件的,以及原始文件是什么样子的您是否尝试过
打印(some_DF[['Open']])
?@m.Klugerford这与我想要的非常接近。但是,“日期”和“打开”标题看起来位于不同的行上。你能解释一下double
[[[
]]
在做什么吗?@Tuan333这是来自雅虎财经的熊猫数据阅读器。很有趣,这是两天来我第三次看到有人担心熊猫的产出。你有具体的原因吗?重要的是你想要的图形…重新设置索引。。。我怎么没想到呢。伟大的现在我如何将
x
作为第一列,将
y
作为第二列?有什么提示吗?@MattR使用原始数据框,您可以进行
打印(一些_DF.reset_index()[[['Date','Open']])
输出的顺序取决于您提供列名列表的顺序。我仍然不清楚
[[]]
在做什么。能解释一下吗?我真的很感谢helpreset_索引。。。我怎么没想到呢。伟大的现在我如何将
x
作为第一列,将
y
作为第二列?有什么提示吗?@MattR使用原始数据框,您可以进行
打印(一些_DF.reset_index()[[['Date','Open']])
输出的顺序取决于您提供列名列表的顺序。我仍然不清楚
[[]]
在做什么。能解释一下吗?我真的很感谢你的帮助