#pandas获取数据行数和列数,并非是用len或者length的,而是用shape:
Count_Row=df.shape[0] #gives number of row count
Count_Col=df.shape[1] #gives number of col count
pandas数据去重,链接,下面函数实现了从“CRASHSEV”中选出1,2,3,4的属性,乱序,然后取出前10000行,按行链接成新的数据,重建索引
def unbanlance(un_data):
data1 = un_data.loc[(data["CRASHSEV"] == 1)].sample(frac=1).iloc[:10000, :]
data2 = un_data.loc[(data["CRASHSEV"] == 2)].sample(frac=1).iloc[:10000, :]
data3 = un_data.loc[(data["CRASHSEV"] == 3)].sample(frac=1).iloc[:10000, :]
data4 = un_data.loc[(data["CRASHSEV"] == 4)].sample(frac=1).iloc[:10000, :]
ba_data = pd.concat([data1,data2,data3,data4], axis=0).sample(frac=1).reset_index(drop=True) #0是按行链接
return ba_data
其中,sample()参数frac是要返回的比例,比如df中有10行数据,我只想返回其中的30%,那么frac=0.3
以下内容转载自:https://blog.csdn.net/liuweiyuxiang/article/details/78241530
今天我们就来谈一谈其强大的数据筛选功能,主要包括两大类,按照条件筛选和按照索引筛选。可以对行进行筛选,也可以按照列进行筛选。