python--pandas基础命令集

it2022-05-05  102

1缩写解释&库的导入: df:任意的pandas DataFrame(数据框)对象 s:任意的pandas Series(数组)对象 (提示:pandas和numpy是用python做数据分析最基础的且最核心的库) 导入库:import pandas as pd import numpy as np

2.数据的导入: pd.read_csv(filename) //导入csv格式的文件中的数据 pd.read_table(filename) //导入有分隔符的文件的数据 pd.read_excel(filename) //导入Excel格式文件中的数据 pd.read_sql(filename) //导入SQL数据表或数据库的数据 pd.read_json(json_string) //导入JSON格式的字符,URL地址或者文件中的数据 pd.read_html(url) //导入经过解析的URL地址中包含的数据框(DataFrame)数据 pd.read_clipboard() //导入系统黏贴板里面的数据 pd.DataFrame(dict) //导入python字典(dict)里面的数据,其中key是数据框的表头,value是数据框的内容

3.数据的导出: df.to_csv(filename) //将数据框中的数据导入csv格式的文件中 df.to_excel(filename) //将数据框中的数据导入excel格式的文件中 df.to_sql(filename) //将数据框中的数据导入SQL数据表或数据库中 df.to_json(filename) //将数据框中的数据导入JSON格式的文件中

4.创建测试对象 : 1)pd.DataFrame(np.random.rand(10,5)) //创建一个10行5列的由随机浮点数组成的数据框 DataFrame 2)pd.Series(my_list) //从一个可迭代的对象 my_list中创建一个对象 3)以a=pd.DataFrame(np.random.rand(10,5))为对象,则: a.index=pd.date_range(‘2017/1/1’,periods=a.shape[0]) //添加一个日期索引 index

5.数据的查看与检查:以a为对象 1)a.head(n) //查看数据框的前n行 2)a.tail(n) //查看数据框的最后n行 3)a.shape //查看数据框的行数与列数 4)a.info //查看数据框(DataFrame)的索引,数据类型及内存信息 5)a.describe() //对于数据类型为数值型的列,查询其描述性统计的内容 6)Series对象 : a.value_counts(dropna=False) DataFrame对象:a.apply(pd.Series.value_counts)

6.数据的选取:以a为对象 1)a[col] //以数组Series的形式返回选取的列 2)a[[col1,col2]] //以新的数据框的形式返回选取列 3)Series对象:a.iloc[0] //按照位置选取 a.loc[‘index’] //按照索引选取 DataFrame对象:a.iloc[0,:] //选取第一行 a.iloc[0,0] //选取第一行的第一个元素

7数据的清理:以a为对象 1)a.columns=[‘a’,‘b’] //重命名数据框的列名称 2)a.isnull() //检查数据中空值出现的情况,并返回一个由布尔值组成的列 3)a.notnull //检查数据中非空值出现的情况,并返回一个由布尔值组成的列 4)a.dropna() //移除数据框中包含空值的行 5)a.dropna(axis=1) //移除数据框中包含空值的列 6)a.fillna(x) 将数据框中所有空值替换为x 7)在Series对象中,a.fillna(a.mean()) //将所有空值替换为平均值 8)a.astype(float) //将数组(Series)的格式转化为浮点数 9)a.replace(1,‘ones’) //将对象中所有1替换为’ones‘ 10)a.rename(columns=lambda x:x+2) //将全体列重命名 11)a.rename(colunms={‘old_name’:‘new_name’}) //将选择的列重命名 12)a.set_index(‘column_one’) //改变索引 13)a.rename(index=lambda x:x+1) //改变全体索引

8.数据的过滤(filter),排序(sort)和分组(groupby):以a为对象 1)a[a[col]>0.5] //选取数据框中对应行的数值大于0.5的全部列 2)a[(a[col]>0.5)&(a[col]<0.7)] //选取数据框中对应行的数值大于0.5,并且小于0.7的全部列 3)a.sort_values(col1) //按照数据框的列col1升序的方式对数据框a做排序 4)a.sorrt_values(col2,ascending=False) //按照数据框的列col2降序的方式对数据框做排序 5)a.sort_values([col1,col2],ascending=[Ture,False]) //按照数据框的列col1升序,col2降序的方式对数据框a做排序 6)a.groupby(col) //按照某列对数据框做分组 7)a.groupby([col1,col2]) //按照列col1和col2对数据框做分组 8)a.group(col1)[col2].mean() //按照col1对数据框a做分组处理后,返回对应的col2的平均值 9)a.pivot_table(index=col1,values=[col2,col3],aggfunc=mean) //做透视表,索引为col1,针对的数值列为 col2和col3,分组函数为平均数 10)a.groupby(col1).agg(np.mean) //按照col1对a进行分组,且对每一组去平均值 11) a.apply(np.mean) //对数据框a的每一列求平均值 12)a.apply(np.max,axis=1) //对数据框的每一行求最大值

9.数据的连接与组合:以a为对象 1)a.append(b) //在数据框b的行末尾添加数据框a,其中a和b的列数应该相等 2)pd.concat([a,b],axis=1) //在数据框a的列最后添加b,其中a和b的行数应该相等 3)a.join(b,on=col1,how=‘inner’) //对数据框a和b做内连接,其中连接的列为col1

10.数据的统计:以a为对象 1)a.describe() //得到数据框a每一列的描述性统计 2)a.mean() //得到数据框中每一列的平均值 3)a.corr() //得到数据框中每一列与其他列的相关系数 4)a.count() //得到数据框中每一列的非空值个数 5)a.max() //得到数据框中每一列的最大值 6)a.min() //得到数据框中每一列的最小值 7)a.median() //得到数据框中每一列的中位数 8)a.std() //得到数据框中每一列的标准差


最新回复(0)