Pandas数据筛选

对数据集中标签进行筛选,记笔记,后面好好学习 Pandas。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import os
import glob
import pandas as pd

#获取 path 中 csv 文件名
path =r'/xx/xxx/'
filenames = glob.glob(path + "*.csv")

#读取遍历到的所有文件
dfs = []
for filename in filenames:
dfs.append(pd.read_csv(filename, keep_default_na=True))

#将所有数据读入到 DataFrame
data_df = pd.concat(dfs)

#查看列名
data_df.columns
#查看头部,前五行数据
data_df.head()

#表头中的 label 统计
data_df['Label'].value_counts()
print(data_df['Label'].value_counts())
print(list(data_df['Label'].value_counts()))

#筛选出 'Label' 中的包含 'xxx' 数据
df = data_df[data_df['Label'].str.contains('xxx')]
df = df[1:100001] #取[1:100001]行
df = df.replace([np.inf, -np.inf], np.nan) #对无效值,极大值处理
df.to_csv('/path/?.csv', index=0, encoding="utf_8", na_rep="NaN") #写入到本地文件