1.读文件
- 读取excel文件
df = pd.read_excel('path',sheetname='sheet1',header=None,names=['第一列','第二列','第三列'])
path:要读取的文件的绝对路径
sheetname:指定读取excel中的哪一个工作表,默认sheetname=0,即默认读取excel中的第一个工作表,若sheetname = ‘sheet1’,即读取excel中的sheet1工作表;
header:用作列名的行号,默认为header=0,若header=None,则表明数据中没有列名行;若header=0,则表明第一行为列名
names:列名命名或重命名
- 读取csv文件
df = pd.read_csv('path',sep=' ',header=None,names=["第一列","第二列","第三列"],encoding='utf-8')
path: 要读取的文件的绝对路径
sep:指定列和列的间隔符,默认sep=‘,’;若sep=‘’\t",即列与列之间用制表符\t分割,相当于tab——四个空格
header:列名行,默认为0
names:列名命名或重命名
encoding:指定用于unicode文本编码格式
- 读取txt文件
df= pd.read_table('path', sep = '\t', header = None, names = ['第一列','第二列','第三列'])
参数用法同上。
2.drop用法
基本语法:
DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')
labels:待删除的行名or列名;
axis:删除时所参考的轴,0为行,1为列;
index:待删除的行名
columns:待删除的列名
level:多级列表时使用
inplace:默认为False,是否替换原来的df
errors:一般用不到
axis=1,删除列;axis=0,删除行;默认为0
df.drop(['one', 'three'], axis=1) #删除列
df.drop(columns = ['1', '2']) #删除列
df.drop(['1', '2']) #删除行
df.drop(index = ['1', '2']) #删除行
df.drop(['one', 'three'], axis=1, inplace = True) #删除列且替换原来的df
基础应用:删除指定列值对应的行(需要先找出指定列值对应行的索引,再根据索引删除这些行,最后重置索引)
dup_index = df[df.city == "北京"].index.tolist() #将df中city值为北京的索引找出来并转为list
df = df.drop(index = dup_index) #删除
df = df.reset_index(drop=True) #重置索引
3.drop_duplicates去除重复行
基本语法:
df.drop_duplicates(subset = None,keep = 'first',inplace = False)
参数说明:
subset:表示要去重的列名,默认为 None。
keep:有三个可选参数,分别是 first、last、False,默认为 first,表示只保留第一次出现的重复项,删除其余重复项,last 表示只保留最后一次出现的重复项,False 则表示删除所有重复项。
inplace:布尔值参数,默认为 False 表示删除重复项后返回一个副本,若为 Ture 则表示直接在原数据上删除重复项。
参考链接:https://blog.csdn.net/feverfew1/article/details/121342444
https://blog.csdn.net/wzk4869/article/details/126921073
https://blog.csdn.net/weixin_42322206/article/details/127673480