如何合并拆分后的DataFrame子集?求s1+s2类合并操作方法
解决Pandas DataFrame子集合并问题
你用+号合并DataFrame子集的方式是错误的——Pandas里的+运算符是对元素做逐元素加法运算,不是合并行。要合并两个DataFrame子集,应该用pd.concat()方法。
修正后的完整代码
import pandas as pd import numpy as np df = data shuffle = df.sample(frac=1) dfrand = np.array_split(shuffle, 3) s1 = dfrand[0] s2 = dfrand[1] s3 = dfrand[2] # 合并s1和s2得到trainingSet1 trainingSet1 = pd.concat([s1, s2], ignore_index=True) trainingSet2 = pd.concat([s1, s3], ignore_index=True) trainingSet3 = pd.concat([s2, s3], ignore_index=True)
关键说明
pd.concat([df1, df2])是Pandas标准的合并DataFrame方法,默认沿行方向(axis=0)拼接两个DataFrame的内容。- 参数
ignore_index=True会重置合并后DataFrame的索引,避免出现原子集的重复索引问题;若需要保留原索引,可去掉该参数。
内容的提问来源于stack exchange,提问作者Bubbelz
相关产品推荐
相关产品推荐

