【发布时间】:2016-02-23 20:30:55
【问题描述】:
我正在尝试运行一个循环来将几个压缩文本文件导入 Pandas 并创建交叉列表。代码如下:
def delta_calc(start_year,end_year):
for x in range(start_year, end_year+1,1):
return
"disposition"+x+"_24mo_df"=pd.read_table("path/lps_"+x+".txt",compression='gzip',sep='\t')
"disposition"+x+"_24mo_df".sort(['loan_id','last_paid_interest_date'], ascending=[True,False], inplace=True)
"disposition"+x+"_24mo_nodups_df"="disposition"+x+"_24mo_df".drop_duplicates('loan_id')
"disposition"+x+"_24mo_crosstab"=pd.crosstab("disposition"+x+"_24mo_nodups_df".initial_investor_code,"disposition"+x+"_24mo_nodups_df".current_investor_code, margins=True)
但是,我收到以下错误消息:
File "<ipython-input-63-d662d71d1354>", line 4
"disposition"+x+"_24mo_df"=pd.read_table("path/lps_"+x+".txt",compression='gzip' ,sep='\t')
^
SyntaxError: can't assign to operator
任何帮助将不胜感激。
【问题讨论】:
-
错误信息再清楚不过了。你想做的是
a+b = some_function()。这应该是/做什么?此外,您的语法已关闭 (return \n ...\n...\n) -
变量名不是字符串,您不能像编写字符串一样编写它们。 "disposition"+x+"_24mo_df" 是表达式,不是变量,不能赋值。
标签: python function variable-assignment