Python 基于包含左列(2)值的dataframe iterable行生成变量
因此,感谢您对解决代码的欣赏,但我认为我使用您的代码以类似的方式运行dataframe,但是当我运行原始dataframe来执行函数时,问题就出现了 这是我的原始数据帧Python 基于包含左列(2)值的dataframe iterable行生成变量,python,pandas,dataframe,dictionary,variables,Python,Pandas,Dataframe,Dictionary,Variables,因此,感谢您对解决代码的欣赏,但我认为我使用您的代码以类似的方式运行dataframe,但是当我运行原始dataframe来执行函数时,问题就出现了 这是我的原始数据帧 [In] : df [Out]: Keterangan Q2 2019 Q2 2018 0 Kas
[In] : df
[Out]:
Keterangan Q2 2019 Q2 2018
0 Kas 22686796.0 27421625.0
1 Giro pada bank indonesia 68409507.0 71159442.0
2 Giro pada bank lain 15675129.0 12584938.0
3 Giro pada bank lain pihak ketiga 88548.0 92417.0
4 Giro pada bank lain pihak berelasi 41391653.0 84668151.0
5 Penempatan pada bank indonesia dan bank lain 1825890.0 2349900.0
6 Penempatan pada bank indonesia dan bank lain pihak ketiga 28443695.0 30264303.0
7 Penempatan pada bank indonesia dan bank lain pihak berelasi 144798482.0 154020507.0
8 Efek-efek yang diperdagangkan -758.0 -758.0
9 Efek-efek yang diperdagangkan pihak ketiga 24081797.0 9396553.
10 Efek-efek yang diperdagangkan pihak berelasi 20253524.0 20584035.0
11 Cadangan kerugian penurunan nilai pada efek-efek 2713267.0 6858655.0
当我运行您的代码时,它工作平稳,可以使列变为变量,它需要变为变量,以便您可以运行def函数,对吗
columns_1 = df['Keterangan']
columns_2 = df[columns_a] #here is unified column which i have been processed before
所以使用你的代码,所以我运行它
def row_to_var(df, columns_1, columns_2, space_replace_with=''):
"""
columns_1 will be used as variable names and columns_2 as the values
"""
df_dict=dict(zip(df[columns_1].values,df[columns_2].values))
for key,val in df_dict.items():
varname=str(key).replace(' ',space_replace_with)
exec(varname + '='+str(val), globals())
row_to_var(df,'Keterangan', columns_a)
它的错误告诉了谷歌这样的合作
File "<string>", line 1
SyntaxError: can't assign to operator
文件“”,第1行
SyntaxError:无法分配给运算符
您能评估一下为什么会发生类似类型的数据帧,但不能以您的方式正常工作的情况吗