2016-09-16 8 views
0

Конечной целью этого вопроса является построение графика X и Y для графика с использованием кадра данных.Печать имен столбцов и значений в Dataframe

У меня есть dataframe так:

   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 vs. Open. Я знаю, что есть способ просто заговорить, но я буду применять эту концепцию к более крупным кадрам данных и хотел бы знать, как это сделать «давно».

Что я пробовал:

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 

Проблема:

Дата, кажется, мой индекс, но заголовок столбца " Открыть 'Не отображается.

Вопрос:

Как я напечатать выше Dataframe, имея 'Open' как мой заголовок. Затем произведите некоторое значение x = Date и значение y = 'Open?

"Ожидаемый код для работы":

Im думая, что-то вроде

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 
+0

Какой файл данных нравится? первые 10 строк. Мне любопытно, как вы читаете этот файл данных и как выглядит необработанный файл. – TuanDT

+2

Вы пробовали 'print (some_DF [['Open']])'? –

+0

@ M.Klugerford это очень близко к тому, что я хотел бы. Однако заголовки «Дата» и «Открыть» выглядят в разных строках. Не могли бы вы объяснить, что делает двойной '[[' ']]'? – MattR

ответ

3

Вы можете reset_index на dataframe, а затем распечатать подмножество dataframe, состоящий из двух колонок

>>> 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, вам не следует беспокоиться о том, как выглядит результат в пандах. Дата была индексом и открыла столбец. Разница в заявлении печати иллюстрирует это различие.

Edit:

df[[list_of_column_names]] так же, как df.loc[:, [list_of_column_names]]. Он дает список столбцов для подмножества исходного фрейма.

+0

restet_index ...почему я об этом не подумал. Большой! Теперь, как бы я сделал 'x' первый столбец и' y' второй? какие-нибудь советы? – MattR

+0

@MattR с вашим исходным фреймворком данных вы можете сделать 'print (some_DF.reset_index() [['Date', 'Open']])' Порядок вывода зависит от порядка, в котором вы указываете список имен столбцов. –

+0

Я все еще смущен тем, что делает '[[]]'. Можно ли это объяснить? Я очень ценю помощь – MattR

Смежные вопросы