Python 如何将一个数据帧拆分为多个行数较少的数据帧?

Python 如何将一个数据帧拆分为多个行数较少的数据帧?,python,pandas,dataframe,pandas-groupby,Python,Pandas,Dataframe,Pandas Groupby,例如,如果我有一个由100行和4列组成的DataFrame,我如何创建5个新的DataFrames,每个都由20行和4列组成 也就是说,如果原始数据帧的任意列包含列表[0,1,2,3,…,98,99],我如何创建5个新的数据帧,以便第一个数据帧的任意列包含列表[0,1,2,…,9],第二个DataFrame的任意列包含列表[10、11、12、…、19]等 我尝试了以下方法来创建一个由一列组成的数据框,该列包含列表[0,1,2,3,…,98,99],但它给了我100个CSV文件,每个文件只包含一行

例如,如果我有一个由100行和4列组成的
DataFrame
,我如何创建5个新的
DataFrames
,每个都由20行和4列组成

也就是说,如果原始
数据帧的任意列包含列表
[0,1,2,3,…,98,99]
,我如何创建5个新的
数据帧
,以便第一个
数据帧
的任意列包含列表
[0,1,2,…,9]
,第二个
DataFrame
的任意列包含列表
[10、11、12、…、19]

我尝试了以下方法来创建一个由一列组成的
数据框
,该列包含列表
[0,1,2,3,…,98,99]
,但它给了我100个
CSV
文件,每个文件只包含一行,而不是所需的5个CS
在此处输入code
V文件,每个文件包含20行:

import pandas as pd
import numpy as np
list = []
for i in range (0, 100):
    list.append(i)

df = pd.DataFrame(data=list, columns=['A'])
groups = df['A'].groupby(np.arange(len(df['A']/10)))
for (frameno, frame) in groups:
    frame.to_csv("/Users/ephemeralhappiness/Desktop/Cycle Test/" + "%s.csv" % frameno)

只需将您的groupby更改为:

# to get 5 groups
nrows = 20
groups = df.groupby(df.index // nrows)

print(groups.ngroups)
5

只需将您的groupby更改为:

# to get 5 groups
nrows = 20
groups = df.groupby(df.index // nrows)

print(groups.ngroups)
5

你会考虑<代码>期望=5;组=DF.GROPBY(DF.Eng/(LeN(DF)/期望))< /代码>一个合理的泛化?@标记应该产生相同数量的组,你会考虑<代码>期望=5;groups=df.groupby(df.index/(len(df)/所需))
一个合理的泛化?@标记,该标记应生成相同数量的组