学习Python, 当然少不了pandas,pandas是python数据科学中的必备工具,熟练使用pandas是从sql boy/girl 跨越到一名优秀的数据分析师傅的必备技能。
这篇pandas常用操作总结帮大家回顾下pandas的常用语法,尤其是我们分析数据时常用的方法。文末还有pandas的cheat sheet,帮助你记住常见的pandas操作。
常用操作分类:
从不同文件中导入数据以不同的文件格式导出DataFrames查看DataFrame信息选择数据的特定子集数据清理命令分组、排序和过滤数据其他以下df代表DataFrame对象,ser代表Series对象。
从不同文件中导入数据
从CSV文件中读取所有数据:pd.read_csv(file_name)从一个分隔的文本文件(如TSV)中读取所有数据:pd.read_table(file_name)从Excel表读取:pd.read_excel(file_name)从SQL数据库中读取数据:pd.read_sql(query, connectionObject)从JSON格式的字符串或URL中获取数据:pd.read_json(jsonString)要获取剪贴板的内容:pd.read_clipboard()
以不同的文件格式导出DataFrames
将DataFrame写入CSV文件:df.to_csv(file_name)将DataFrame写入Excel文件:df.to_excel(file_name)将一个DataFrame写入一个SQL表:df.to_sql(tableName, connectionObject)将DataFrame写入JSON格式的文件:df.to_json(file_name)
查看DataFrame信息
获取所有与索引、数据类型和内存相关的信息:df.info()要提取DataFrame的起始n行:df.head(n)要提取DataFrame中最后n行:df.tail(n)要提取DataFrame中可用的行数和列数:df.shape。总结数字列的统计:df.describe()要查看唯一值及其计数:ser.value_counts(dropna=False)
选择数据的特定子集
提取第一行:df.iloc[0,:]。提取第一列的第一个元素: df.iloc[0,0]返回标签为'col'的列作为Series:df[col]。返回具有新数据框架的列:df[[col1,col2]]。按位置选择数据:ser.iloc[0]。按索引选择数据:ser.loc['index_one']
数据清理命令
同时重命名所有列:df.rename(columns = lambda x: x + '1')选择性地重命名列:df.rename(columns = {'oldName': 'newName'})重命名所有的索引:df.rename(index = lambda x: x + 1)按顺序重命名列:df.columns = ['x', 'y', 'z']。检查是否存在空值,相应地返回一个布尔值arrray:pd.isnull()pd.isnull()的反向:pd.notnull()删除所有包含空值的记录:df.dropna()删除所有包含空值的列:df.dropna(axis=1)用'n'代替每个空值:df.fillna(n)要将series的所有数据类型转换为浮点数:ser.astype(float)将所有数字1替换为'1',将3替换为'3':ser.replace([1,2], ['one', 'two'])
python数据分析经典教材:
分组、排序和过滤数据
返回列值的groupby对象:df.groupby(colm)返回多列值的groupby对象:df.groupby([colm1, colm2])按升序排序(按列):df.sort_values(colm1)要按降序排序(按列):df.sort_values(colm2, ascending=False)提取列值大于0.6的行:df[df[colm] > 0.6]
其他
将第一个DataFrame的行添加到第二个DataFrame的末尾:df1.append(df2)将第一个DataFrame的列添加到第二个DataFrame的末尾:pd.concat([df1,df2],axis=1)返回所有列的平均值:df.mean()返回非空值的数量:df.count()另外给大家准备了pandas使用的cheat sheet,简单两页全面地总结了pandas的使用方法。
截图:
公众号 程序员阿狗
中回复「 1206 」即可获取。
举报/反馈

程序员阿狗

379获赞 166粉丝
关于数据分析的学习内容
关注
0
0
收藏
分享