import pandas as pd pd.options.display.max_rows = 10#设置显示行数 df1 = pd.read_csv(r‘E:\anacondatest\PythonData\高校信息.csv‘,encoding=‘gbk‘) #数据框基本信息 df1.info() # 打印前10行 print(df1.head(10)) # 打印后10行 print(df1.tail(10)) # 查看变量名 print(df1.columns) # 返回Index([‘名次‘, ‘学校名称‘, ‘总分‘, ‘类型‘, ‘所在省份‘, ‘所在城市‘, ‘办学方向‘, ‘主管部门‘], dtype=‘object‘) df1.columns = [‘名次1‘, ‘学校名称1‘, ‘总分1‘, ‘类型1‘, ‘所在省份1‘, ‘所在城市1‘, ‘办学方向1‘, ‘主管部门1‘] print(df1) # 指定修改某一列,或者多列的变量名,inplace是否直接替换原来的数据框 df2= df1.rename(columns = {‘学校名称1‘:‘xuxiaomingcheng‘,"总分1":"总分"}, inplace=False) print(df2) # 筛选列 print(df1.名次) # 返回的是series类型 print(df1[‘名次‘,‘总分‘]) # 返回的是数据框 # 删除变量列,inplace是否替换原来的数据框,尽量不要在原来的数据框上直接删除列 df3 = df1.drop(columns=[‘名次‘,‘总分‘], inplace=False) # 变量类型转换,pandas具有的数据类型是python和numpy的混合类型 print(df1.dtypes) # 查看各列的数据类型 df1.astype(‘str‘, errors=‘ignore‘) # 修改整个数据框,errors报错忽略 df1.名次.astype("str") # 只修改某一列的数据类型 # 使用指定转换类型的函数,可以配合df.apply来批量进行多列的转换 ‘‘‘pd.to_datetime() pd.to_numeric() pd.to_timedelta() pd.to_srting()‘‘‘ pd.to_numeric(df1.总分) df1([‘名次‘, ‘总分‘]).astype(‘str‘).apply(pd.to_numeric) # 基于数据特征进行自动转换,出错不易排除 df1.infer_objects()
第九节 pandas变量列的重命名、筛选,删除以及变量类型转换
原文:https://www.cnblogs.com/kogmaw/p/12561934.html