我有一个数据框(称为df),并希望根据其中一列中的值将其拆分为多个数据框。
我认为语法将是:
month = df.month.unique().tolist()
for item in month:
[item] = df[df[month]==[item]]
DataFrameGroupBy对象是一个返回子DataFrames的迭代器:
for month, subdf in df.groupby(['month']):
...
相反,如果您希望随机访问按月指定的子DataFrame,则可以将month
列更改为索引:
df = df.set_index(['month'])
然后您可以按月选择带有以下内容的行:
df.loc[month]
例如,
In [4]: df = pd.DataFrame({'month': ['Jan','Jan','Feb'], 'val':[1,2,3]})
In [6]: df = df.set_index(['month'])
鉴于此DataFrame:
In [7]: df
Out[7]:
val
month
Jan 1
Jan 2
Feb 3
这将选择月份(索引)为的行'Jan'
:
In [8]: df.loc['Jan']
Out[8]:
val
month
Jan 1
Jan 2
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句