dataframe筛选/切片满足条件的行并生成新的表(dataframe)

用dataframe.loc函数可以按某列的值筛选

df1 = df.loc[df['matchId'] == 'MS701']

这里筛选出matchId那列值为MS701的行
然后用concat函数拼接出每次筛选出的dataframe即可

file = "rg_3d.xlsx"
df = pd.read_excel('./' + file, index_col=0)
df1 = pd.concat([df.loc[df['matchId'] == id] for id in ['SD002','SD016','SM004','SM021']],
                   ignore_index=True)  # 把每一份合并

df1.to_excel("./rg_3d_FourMatches.xlsx")

loc函数还可以做很多切片工作,推荐多看pandas的官网文档,可以避免自己造轮子

你可能感兴趣的:(pandas,python,数据分析)