2015-10-31 5 views
0

У меня есть кадр данных, как это:Постройте кадр данных

ReviewDate_month,ProductId,Reviewer 
01,185,185 
02,155,155 
03,130,130 
04,111,111 
05,110,110 
06,98,98 
07,101,92 
08,71,71 
09,73,73 
10,76,76 
11,105,105 
12,189,189 

Я хочу, чтобы построить его, ReviewDate_Month в X, ID продукта и рецензент в Y идеально. Но я начну с 1 строки либо идентификатора продукта, либо рецензента. поэтому я попытался:

df_no_monthlycount.plot.line 

Got ниже сообщ об ошибке:

File "C:/Users/user/PycharmProjects/Assign2/Main.py", line 59, in <module> 
01      185  185 
02      155  155 
03      130  130 
04      111  111 
05      110  110 
06      98  98 
07      101  92 
08      71  71 
09      73  73 
10      76  76 
    df_no_monthlycount.plot.line 
AttributeError: 'function' object has no attribute 'line' 
11      105  105 
12      189  189 

Process finished with exit code 1 

Я также попытался это:

df_no_monthlycount.plot(x=df_helful_monthlymean['ReviewDate_month'],y=df_helful_monthlymean['ProductId'],style='o') 

Сообщ Ошибка вроде этого:

Traceback (most recent call last): 
    File "C:/Users/user/PycharmProjects/Assign2/Main.py", line 52, in <module> 
    df_no_monthlycount.plot(x=df_helful_monthlymean['ReviewDate_month'],y=df_helful_monthlymean['ProductId'],style='o') 
    File "C:\Python34\lib\site-packages\pandas\core\frame.py", line 1797, in __getitem__ 
    return self._getitem_column(key) 
    File "C:\Python34\lib\site-packages\pandas\core\frame.py", line 1804, in _getitem_column 
    return self._get_item_cache(key) 
    File "C:\Python34\lib\site-packages\pandas\core\generic.py", line 1084, in _get_item_cache 
    values = self._data.get(item) 
    File "C:\Python34\lib\site-packages\pandas\core\internals.py", line 2851, in get 
    loc = self.items.get_loc(item) 
    File "C:\Python34\lib\site-packages\pandas\core\index.py", line 1572, in get_loc 
    return self._engine.get_loc(_values_from_object(key)) 
    File "pandas\index.pyx", line 134, in pandas.index.IndexEngine.get_loc (pandas\index.c:3838) 
    File "pandas\index.pyx", line 154, in pandas.index.IndexEngine.get_loc (pandas\index.c:3718) 
    File "pandas\hashtable.pyx", line 686, in pandas.hashtable.PyObjectHashTable.get_item (pandas\hashtable.c:12294) 
    File "pandas\hashtable.pyx", line 694, in pandas.hashtable.PyObjectHashTable.get_item (pandas\hashtable.c:12245) 
KeyError: 'ReviewDate_month' 
+0

Вы вызываете метод plot на кадре данных pandas. См. Http://pandas.pydata.org/pandas-docs/stable/visualization.html и http://stackoverflow.com/questions/16568964/make-a-multiline-plot-from-csv-file-in-matplotlib , –

ответ

0

Вызовите plot, как показано ниже:

import pandas as pd 
import matplotlib.pyplot as plt 

df = pd.read_csv('data.csv') 

print(df) 

df.plot(x ='ReviewDate_month',y=['ProductId', 'Reviewer'] ,kind='line') 
plt.show() 

даст вам:

enter image description here

+0

Фактически, если я сохраню файл в csv и прочитаю csv обратно в dataframe, ваш код работает. Тем не менее, мой dataframe фактически поступает из группы «df_monthlycount = df_full [['ProductId', 'Reviewer', 'ReviewDate_month']]. Groupby (['ReviewDate_month']). Count()« сюжет не работает хорошо с что, ошибка msg, как указано в моей опции2, любая идея? – Jasmine

+0

'df_monthlycount' - это dataframe. Вы должны иметь возможность выполнить 'df_montlycount.plot (x = 'ReviewDate_month', y = ['ProductId', 'Reviewer'], kind = 'line')' Это также дает ошибку? – Leb

+0

Вы можете проверить свое имя, введите 'type (df_monthlycount)' – Leb

0

Если вы хочу построить ReviewDate_Month в X, Product ID и Reviewer в Y, вы можете сделать это следующим образом:

df_no_monthlycount.plot(x='ReviewDate_Month', y=['Product ID', 'Reviewer']) 
+0

Возможно, мой вопрос немного вводит в заблуждение. Лучше всего я могу построить 2 строки, но проблема, с которой я столкнулась сейчас, - я даже не могу построить одну линию. Я попробовал свой собственный 2-й способ, я получил эту ключевую ошибку. – Jasmine

+0

@ Jasmine код в моем ответе «заговорит» 2 строки для вас: «Идентификатор продукта» и «Рецензент» –

+0

он выкинет мне ту же самую ошибку msg с тем, что я использую - df_no_monthlycount.plot (x = df_helful_monthlymean ['ReviewDate_month' ], y = df_helful_monthlymean ['ProductId'], style = 'o') – Jasmine

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