简体   繁体   English

熊猫不进口吗? 'NameError:全局名称'pandas'未定义'

[英]Is Pandas not importing? 'NameError: global name 'pandas' is not defined'

I'm getting a few errors here but I think it's due to pandas not importing as it's greyed out. 我在这里遇到一些错误,但我认为这是因为大熊猫没有导入,因为它是灰色的。 If that is the problem, how would I fix this? 如果这是问题,我该如何解决这个问题?

C:\\Anaconda\\python.exe C:/Users/nickd/Documents/SKLEARN-STOCKS/stock-mach.py Traceback (most recent call last): File "C:/Users/nickd/Documents/SKLEARN-STOCKS/stock-mach.py", line 38, in Key_Stats() File "C:/Users/nickd/Documents/SKLEARN-STOCKS/stock-mach.py", line 12, in Key_Stats df = pandas.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio']) NameError: global name 'pandas' is not defined C:\\ Anaconda \\ python.exe C:/Users/nickd/Documents/SKLEARN-STOCKS/stock-mach.py​​ Traceback(最近一次调用最后一次):文件“C:/ Users / nickd / Documents / SKLEARN-STOCKS / stock -mach.py​​“,第38行,在Key_Stats()文件”C:/Users/nickd/Documents/SKLEARN-STOCKS/stock-mach.py​​“,第12行,在Key_Stats中df = pandas.DataFrame(columns = [' Date','Unix','Ticker','DE Ratio'])NameError:全局名称'pandas'未定义

Process finished with exit code 1 进程以退出代码1结束

import pandas as pd
import os
import time
from datetime import datetime

#location of the data files
path = 'C:\Users\nickd\Documents\SKLEARN-STOCKS'
#what specific field do you want to grab and in all files in that directory
def Key_Stats(gather="Total Debt/Equity (mrq) "):
    statspath = path+'/_KeyStats'
    stock_list = [x[0] for x in os.walk(statspath)]
    df = pandas.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio'])

    for each_dir in stock_list[1:5]:
        each_file = os.listdir(each_dir)
        ticker = each_dir.split("//")[1]
        if len(each_file) >0:
            for file in each_file:

                date_stamp = datetime.strptime(file, '%Y%m%d%H%M%S.html')
                #unix_time = time.mktime(date_stamp.timetuple())
                print(date_stamp,unix_time)
                full_file_path = each_file+'/'+file
                #print(full_file_path)
                source = open(full_file_path, 'r').read()
                #print(source)
                try:
                    value = float(source.split(gather+':</td><td class="yfnc_tabledata1">')[1].split('</td>')[0])
                    df = df.append({'Date':date_stamp,'Unix':unix_time,'Ticker':ticker,'DE Ratio':value,}, ignore_index = True)
                except Exception as e:
                    pass

                #print(ticker+":",value)

    save = gather.replace(' ','').replace(')','').replace('(','').replace('/',''+('.csv')
    print(save)
    df.to_csv(save)

                #time.sleep(15)

Key_Stats()

You have imported it as 您已将其导入为

import pandas as pd

and calling 并打电话

#pandas
df = pandas.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio'])

You could either change 你可以改变

  • import pandas as pd to import pandas or import pandas as pdimport pandas
  • df = pandas.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio']) to df = pd.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio']) . df = pandas.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio'])df = pd.DataFrame(columns = ['Date','Unix','Ticker','DE Ratio'])

edit: 编辑:

error is due to missing ) 错误是由于丢失)

save = gather.replace(' ','').replace(')','').replace('(','').replace('/',''+('.csv'))

You imported pandas as pd . 您将pandas导入为pd Either refer to it as such throughout, or remove the as pd from the import. 要么全程引用它,要么从导入中删除as pd

(Plus, never ever ever do except Exception... pass . You'll swallow all sorts of errors and never know what they were. If you aren't going to handle them, don't catch them at all.) (另外, 从来没有做过 except Exception... pass 。你会吞下各种错误,永远不会知道它们是什么。如果你不打算处理它们,就根本不要抓住它们。)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM