Python 将数据动态导入到dataframe
我试图让python要求用户打开一个文件位置,从那里他们希望将数据读入数据帧 我正在尝试的代码是:Python 将数据动态导入到dataframe,python,python-3.x,pandas,Python,Python 3.x,Pandas,我试图让python要求用户打开一个文件位置,从那里他们希望将数据读入数据帧 我正在尝试的代码是: 导入日期时间 作为pd进口熊猫 导入json 导入gc 导入操作系统 从pandas.io.json导入json_规范化 Today=datetime.datetime.Today()#将Today字符串设置为今天的名称 Today_day=Today.strftime(“d”)#将Today_day设置为当月的日期(例如21) 尽管如此: user_input=input(“输入文件的路径(请记
导入日期时间
作为pd进口熊猫
导入json
导入gc
导入操作系统
从pandas.io.json导入json_规范化
Today=datetime.datetime.Today()#将Today字符串设置为今天的名称
Today_day=Today.strftime(“d”)#将Today_day设置为当月的日期(例如21)
尽管如此:
user_input=input(“输入文件的路径(请记住包括文件名和扩展名):”)#要求用户输入要使用的文件的文件路径
如果不是os.path.isfile(用户输入):#如果文件路径不正确(例如缺少或不正确的文件名)
打印()#打印一个空行
打印(“我在”+str(用户输入)处未找到文件”)#打印未找到该文件
打印()#打印一个空行
继续#返回到请求正确的文件路径
否则:#如果文件路径正确
中断#中断while循环
#iFile=open(用户输入,'rt')#以只读模式(“r”)打开文件(如果存在),指定该文件为文本文件(“t”)
gc.collect()#空垃圾收集
SIEBEL=pd.read_csv(用户输入,编码=“ISO-8859-1”)#从SIEBEL PSD2提取获取数据
SIEBEL.fillna(“,inplace=True)#用空格替换空值
SIEBEL.sort_值(“CIF”,inplace=True)#按CIF值对数据帧进行排序
打印()#打印空行
打印(SIEBEL.d类型)
打印()#打印空行
打印(“SIEBEL摘录包含:”,len(SIEBEL.index),“行”)#打印SIEBEL数据中的行数
打印(“SIEBEL摘录包含:”,len(SIEBEL.columns),“columns”)#打印SIEBEL数据中的列数
SIEBEL.drop(columns=[“Eircode”],axis=1,inplace=True)#从数据帧中删除oa列,在本例中为Eircode
打印()#打印空行
打印(“SIEBEL摘录包含:”,len(SIEBEL.columns),“columns”)#打印SIEBEL数据中的行数
打印()
打印(SIEBEL.dtypes)#在数据框中打印所有类型
SIEBEL.to_csv(r“C:\Users\LIDJ622\Desktop\SIEBEL_export”+Today.strftime(“%B%#d”)+“.csv”,index=None,header=True)#将排序后的文件作为csv保存到桌面
然而,当我尝试这个时,我得到了
runfile('C:/Users/LIDJ622/Desktop/test1 increment.py',
wdir='C:/Users/LIDJ622/Desktop')
输入文件的路径(请记住包括文件名和
扩展名):SIEBEL Extract 20k v1.csv回溯(最近的调用)
最后):
文件“”,第1行,在
运行文件('C:/Users/LIDJ622/Desktop/test1 increment.py',wdir='C:/Users/LIDJ622/Desktop')
文件
“C:\ProgramData\Anaconda3\lib\site packages\spyder\utils\site\sitecustomize.py”,
第705行,在runfile中
execfile(文件名、命名空间)
文件
“C:\ProgramData\Anaconda3\lib\site packages\spyder\utils\site\sitecustomize.py”,
execfile中的第102行
exec(编译(f.read(),文件名,'exec'),命名空间)
文件“C:/Users/LIDJ622/Desktop/test1 increment.py”,第35行,在
SIEBEL.sort_值(“CIF”,inplace=True)#按CIF值对数据帧进行排序
文件
“C:\ProgramData\Anaconda3\lib\site packages\pandas\core\frame.py”,
第3634行,在排序_值中
na_位置=na_位置)
文件
“C:\ProgramData\Anaconda3\lib\site packages\pandas\core\sorting.py”,
纳格索特250号线
indexer=non_nan_idx[non_nans.argsort(kind=kind)]
TypeError:'错误在哪里?线路?是否没有更多的代码?您显示的错误似乎与您共享的代码无关。已编辑以包含代码和错误错误错误在哪里?线路?是否没有更多代码?您显示的错误似乎与您共享的代码无关。已编辑以包含代码和错误