Python 中 R 的 aasign() 的类似函数是啥?
Posted
技术标签:
【中文标题】Python 中 R 的 aasign() 的类似函数是啥?【英文标题】:What's the analogous function for aasign() of R in Python?Python 中 R 的 aasign() 的类似函数是什么? 【发布时间】:2016-07-21 02:37:35 【问题描述】:有一个清单。
stud = ['mark', 'kael', 'joey', 'ash']
我想为螺柱列表中的每个项目分配一个数据框。 (将列表中的每个项目作为变量名) 例如。
mark = dataframe1
kael = dataframe2
joey = dataframe3
ash = dataframe4
我知道我们可以在 R 中使用 assign() 函数来做到这一点。我们如何在 Python 中实现这一点。
【问题讨论】:
这里的datafrane是指Pandas数据框吗?? 请注意,这在 R 中是可能的,但通常没有任何理由实际这样做。 【参考方案1】:我会使用exec()
从字符串中分配变量名。
像这样的:
dataframe1,dataframe2,dataframe3,dataframe4 = 'a','b','c','d'
stud = ['mark', 'kael', 'joey', 'ash']
dfs = [dataframe1,dataframe2,dataframe3,dataframe4]
for v,d in zip(stud,dfs):
exec('='.format(v,d))
>>> mark
'a'
使用 DataFrame,您必须将 dfs
从对象列表更改为字符串列表:
from pandas import DataFrame
import numpy as np
dataframe1,dataframe2,dataframe3,dataframe4 = DataFrame(np.random.randn(10, 5)),DataFrame(np.random.randn(10, 5)),DataFrame(np.random.randn(10, 5)),DataFrame(np.random.randn(10, 5))
stud = ['mark', 'kael', 'joey', 'ash']
dfs = ['dataframe1','dataframe2','dataframe3','dataframe4']
for v,d in zip(stud,dfs):
exec('='.format(v,d))
【讨论】:
'a' 是一个集合,我想给出一个数据框。如果我在 dfs 中传递数据帧,它会给我一个语法错误。 然后将数据框的名称作为字符串传入dfsdfs = ['dataframe1','dataframe2','dataframe3','dataframe4']
以上是关于Python 中 R 的 aasign() 的类似函数是啥?的主要内容,如果未能解决你的问题,请参考以下文章
R 中是不是有类似于 Python 的 % 的字符串格式化运算符?