在Dataframe中打印列名称和值

时间:2016-09-16 16:11:04

标签: 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-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

我正在尝试绘制DateOpen的关系。我知道有一种方法可以简单地绘制,但我会将这个概念应用于更大的数据帧,并希望知道如何“长手”。

我尝试了什么:

print(some_DF['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'作为标题时打印上述Dataframe。然后制作一些值x = Date的列和一些值y = 'Open的值?

“预期的工作代码”:

我在想像

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

1 个答案:

答案 0 :(得分:3)

您可以在数据框上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提到的那样,你不应该担心输出在熊猫中的表现。 Date是一个索引并打开一个列。 print语句的不同之处说明了这种区别。

编辑:

df[[list_of_column_names]]df.loc[:, [list_of_column_names]]相同。它给出了一个列列表,用于对原始数据帧进行子集化。