python - 有没有办法遍历列表并返回以其内容命名的变量?

标签 python pandas

我有一个按日期组织的 pandas 数据框,我试图按年拆分(在名为“年”的列中)。我想每年返回一个数据框,名称类似于“df19XX”。

我希望写一个“For”循环来处理这个...类似...

for d in [1980, 1981, 1982]:
    df(d) = df[df['year']==d]

...这将返回三个数据帧,分别称为 df1980、df1981 和 df1982。

谢谢!

最佳答案

是这样的吗?还使用@Andy 的 df

variables = locals()
for i in [2012, 2013]:
    variables["df{0}".format(i)]=df.loc[df.date.dt.year==i]
df2012
Out[118]: 
          A       date
0  0.881468 2012-12-28
1  0.237672 2012-12-29
2  0.992287 2012-12-30
3  0.194288 2012-12-31
df2013
Out[119]: 
          A       date
4  0.151854 2013-01-01
5  0.855312 2013-01-02
6  0.534075 2013-01-03

关于python - 有没有办法遍历列表并返回以其内容命名的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47214877/

相关文章:

python - str.split 给出 direct 和 read_csv 不同的结果

python - PANDAS reshape 数据领域日

python - 将单索引 df 转换为多索引的更快方法(列成为索引)

python - 使用 python 在 Elastic-beanstalk 中部署 TCP 服务器

python - 学习Python困难之路练习 50

python - 将 RDD 转换为列联表 : Pyspark

javascript - 服务器和客户端之间的路径冲突

python - 如何从 python groupby 计数中排除 NaN/NaT/None,但包含该行?

python - 对重复出现的行进行分组并从 Pandas 中的单个日期时间列中查找时间差

Python Pandas 在列中求和一个常量值如果日期在两个日期之间