2017-07-16 131 views
1
import pandas as pd 
import numpy as np 
import matplotlib.pyplot as plt 
from datetime import datetime 

plt.style.use('ggplot') 
columns = ['user_id','order_dt','order_products','order_amount'] 
df = pd.read_csv('CDNOW_master.txt',names = columns,sep = '\s+') 
df['order_date'] = pd.to_datetime(df.order_dt,format='%Y%m%d') 
df['month'] = df.order_date.values.astype('datetime64[M]') 
f = df.groupby('user_id')['month'].min().value_counts() 
print(f) 

以上是我的代碼,我的目的是讓他們的第一個月購買的用戶value_counts,但只得到了「NoneType」對象有沒有屬性的結果'文件編號'。「NoneType」對象有沒有屬性「的fileno」

有什麼想法?非常感激

這裏有回溯

Traceback (most recent call last): 
    File "C:\Users\Administrator\Desktop\practice\CDNOW.py", line 19, in <module> 
    print(f) 
    File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages\pandas\core\base.py", line 51, in __str__ 
    return self.__unicode__() 
    File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages\pandas\core\series.py", line 982, in __unicode__ 
    width, height = get_terminal_size() 
    File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages\pandas\io\formats\terminal.py", line 33, in get_terminal_size 
    return shutil.get_terminal_size() 
    File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\shutil.py", line 1071, in get_terminal_size 
    size = os.get_terminal_size(sys.__stdout__.fileno()) 
AttributeError: 'NoneType' object has no attribute 'fileno' 
+2

請提供整個回溯的複製粘貼。知道哪一行會引發錯誤很重要,因爲您引用了由其他內容觸發的內部熊貓錯誤。 –

+0

有上面的追溯 – frank

+0

你在哪裏運行這段代碼?它看起來像你的標準輸出已關閉。 –

回答

0

你不妨試試以下。

df = pd.read_csv('CDNOW_master.txt',usecols = columns,sep = '\s+') 

代替

df = pd.read_csv('CDNOW_master.txt',names = columns,sep = '\s+') 

這解決了我的問題。希望它也能解決你的問題。

2

我也看到了這一點。

>>> type(sys.__stdout__) 
<class 'NoneType'> 

我在使用閒置時調用dunder stdout時得到NoneType。我假設熊貓想要確定在結果中顯示多少,並且正在查找sys輸出信息。 In the documentation, it mentions what this is, but not how to reset it.

我這樣做:

sys.__stdout__ = sys.stdout 

,它解決了這一問題,但我沒有想法,如果我造成的路線問題。

相關問題