Pandas 速查表 (2023版)

数据读写

代码作用
df = pd.DataFrame(pd.read_csv(‘input.csv’,header=1))读取csv
df = pd.DataFrame(pd.read_excel(‘input.xlsx’))读取xlsx
df_inner.to_csv(‘output.csv’)写入CSV
df_inner.to_excel(‘output.xlsx’, sheet_name=‘sheet1’)写入Excel

设置列名dataframe.columns=['col1','col2','col3']

设置索引dataframe.set_index("col_name")

读取行数pd.read_csv(file_path,skiprows=9,nrows=10)

数据创建

代码作用
pd.Series([1, 2, 3, 4, 5])list创建Series
pd.date_range(‘20171022’, periods=6)时间索引
pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list([‘c1’, ‘c2’, ‘c3’, ‘c4’]))列标签
pd.DataFrame.from_dict({“A”:1, “B”:2, “C”:3}, orient=‘index’).T字典创建

数据查看

代码作用
df.shape维度
df.info()数据表基本信息(维度、列名称、数据格式、所占空间等)
df.dtypes列数据的格式
df[‘Name’].dtype某一列格式
df.isnull()空值
df.isnull()查看某一列空值
df[Name’].unique()某一列的唯一值
df.values数据表的值
df.columns列名称
df.head()查看前10行数据
df.tail()查看后10行数据

数据操作

代码作用
df.fillna(value=0)数字0填充空值
df[‘prince’].fillna(df[‘prince’].mean())使用列prince的均值对NA进行填充
df[‘city’]=df[‘city’].map(str.strip)清除city字段的字符空格
df[‘city’]=df[‘city’].str.lower()大小写转换
df[‘price’].astype(‘int’)更改数据格式
df.rename(columns={‘category’: ‘category-size’})更改列名称
df[‘city’].replace(‘sh’, ‘shanghai’)数据替换
df1.dropna(how=‘any’)去掉包含缺失值的行
df1.fillna(5)对缺失值进行填充
pd.isnull(df1)对缺失值进行布尔填充

数据提取

代码作用
df_csv.loc[:, [‘chrom’, ‘q_value’]]索引+列标签切片
df_csv.loc[0, [‘chrom’]]
df_csv.loc[0, ‘chrom’]
df_csv.at[0, ‘chrom’]
df_csv.iloc[1, 1]
df_csv.iat[1, 1]
提取一个标量
df_csv.iloc[3]
df_inner.loc[3]
提取一行
df_inner.iloc[0:5]
df_csv.iloc[3:5, 0:2]
df_csv.iloc[[1, 2, 4], [0, 2]]
df_csv.iloc[1:3, :]
df_inner.ix[:‘2013-01-03’,:4]
提取区域
df_inner[‘city’].isin([‘beijing’])判断city列的值是否为北京
df_inner.loc[df_inner[‘city’].isin([‘beijing’,‘shanghai’])]判断city列里是否包含beijing和shanghai,然后将符合条件的数据提取出来
pd.DataFrame(category.str[:3])提取前三个字符,并生成数据表
df_csv.loc[:, [‘chrom’, ‘q_value’]]索引+列标签切片

数据筛选

代码作用
df_inner.loc[(df_inner[‘age’] > 25) & (df_inner[‘city’] == ‘beijing’), [‘id’,‘city’,‘age’,‘category’,‘gender’]]使用“与”进行筛选
`df_inner.loc[(df_inner[‘age’] > 25)(df_inner[‘city’] == ‘beijing’), [‘id’,‘city’,‘age’,‘category’,‘gender’]].sort([‘age’]) ```
df_inner.loc[(df_inner[‘city’] != ‘beijing’), [‘id’,‘city’,‘age’,‘category’,‘gender’]].sort([‘id’])使用“非”条件进行筛选
df_inner.loc[(df_inner[‘city’] != ‘beijing’), [‘id’,‘city’,‘age’,‘category’,‘gender’]].sort([‘id’]).city.count()对筛选后的数据按city列进行计数
df_inner.query(‘city == [“beijing”, “shanghai”]’)使用query函数进行筛选
df_inner.query(‘city == [“beijing”, “shanghai”]’).price.sum()对筛选后的结果按prince进行求和

数据统计

代码作用
df_inner.groupby(‘city’).count()对所有的列进行计数汇总
df_inner.groupby(‘city’)[‘id’].count()按城市对id字段进行计数
df_inner.groupby([‘city’,‘size’])[‘id’].count()对两个字段进行汇总计数
df_inner.groupby(‘city’)[‘price’].agg([len,np.sum, np.mean])对city字段进行汇总,并分别计算prince的合计和均值
df_inner.sample(n=3)简单的数据采样
weights = [0, 0, 0, 0, 0.5, 0.5]df_inner.sample(n=2, weights=weights)手动设置采样权重
df_inner.sample(n=6, replace=False)采样后不放回
df_inner.sample(n=6, replace=True)采样后放回
df_inner.describe().round(2).T数据表描述性统计
df_inner[‘price’].std()计算列的标准差
df_inner[‘price’].cov(df_inner[‘m-point’])计算两个字段间的协方差
df_inner.cov()数据表中所有字段间的协方差
df_inner[‘price’].corr(df_inner[‘m-point’])两个字段的相关性分析
相关系数在-1到1之间,接近1为正相关,接近-1为负相关,0为不相关
df_inner.corr()数据表的相关性分析

操作数据表结构

代码作用
df_inner.set_index(‘id’)设置索引列
df_inner.sort_values(by=[‘age’])按照 age 列排序
df_inner.sort_index()按照索引列排序
df_inner[‘group’] = np.where(df_inner[‘price’] > 3000,‘high’,‘low’)如果prince列的值>3000,group列显示high,否则显示low
df_inner.loc[(df_inner[‘city’] == ‘beijing’) & (df_inner[‘price’] >= 4000), ‘sign’]=1对复合多个条件的数据进行分组标记
pd.DataFrame((x.split(‘-’) for x in df_inner[‘category’]),index=df_inner.index,columns=[‘category’,‘size’]))对category字段的值依次进行分列,并创建数据表,索引值为df_inner的索引列,列名称为category和size
df_inner=pd.merge(df_inner,split,right_index=True, left_index=True)将完成分裂后的数据表和原df_inner数据表进行匹配
df_inner.reset_index()重设索引
df_inner=df_inner.set_index(‘date’)设置日期为索引

数据表合并

代码作用
df_inner=pd.merge(df,df1,how=‘inner’)内连接(取两个集合的交集)
df_left=pd.merge(df,df1,how=‘left’)左连接(以 df 为基准,df1 在 df 中无匹配则为空)
df_right=pd.merge(df,df1,how=‘right’)右连接(以 df1 为基准,df 在 df1 中无匹配则为空)
df_outer=pd.merge(df,df1,how=‘outer’)全连接(取两个集合的并集,包含有 df , df1 的全部数据行,无匹配则填充空)

修改列名

代码作用
a.columns = [‘a’,‘b’,‘c’]列名全部修改
a.rename(columns={‘A’:‘a’}, inplace = True)修改部分列名

插入一列

代码作用
frame.insert(0, ‘num’, 1)在第一列插入名为num的列,值为1
frame.insert(0, ‘num’, np.[i for i in rang(10)], allow_duplicates=True)在第一列插入名为num的列,值为1…10,允许有重复列
  • 10
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Pandas是一种Python数据分析库,它可以帮助用户处理和分析数据。Pandas速查手册中文是一本Pandas速查手册,提供了Pandas常用的函数和方法的使用介绍,便于用户在实际应用场景中快速查阅和使用。该手册包含了Pandas的数据结构、数据的读取和写入、数据的选择和过滤、数据的处理和转换、数据的分析和计算等方面的内容。通过该手册,用户可以快速了解和学习Pandas,以及在数据分析和处理过程中使用Pandas的知识和技能。同时,该手册还提供了一些常见的数据操作案例和代码示例,帮助用户更好地理解和掌握Pandas的使用。总之,Pandas速查手册中文pdf是一本非常实用的数据分析工具文献,可帮助Python程序员进行高效便捷的数据操作,提升工作效率。 ### 回答2: Pandas是一个基于Python语言的数据分析、处理库。Pandas速查手册中文PDF,是一份详细、全面的Pandas使用手册,在使用Pandas时,可以作为方便的参考资料。 这份手册的主要内容涵盖了Pandas中各种数据结构、数据操作方法、及应用案例等方面,是新手入门、熟手复习的很好工具。同时,速查手册PDF在使用时方便快捷,可以随时随地查阅。 当需要对数据进行清洗、整合、分析时,使用Pandas可以提高工作效率,如果对Pandas掌握得不够熟悉,速查手册可以帮助了解数据相关的Python代码的写作规范、Python代码的编写方法等,帮助使用者快速了解相关知识点。 Pandas速查手册中文 PDF 是数据分析领域中的一个实用工具,尤其适合需要在数据处理过程中提高效率的人群。 ### 回答3: Pandas速查手册中文PDF是一本非常实用的数据分析工具书,主要介绍了Pandas库的基本使用方法和常见操作方式。该手册的特点是简洁明了,涵盖面广,可以帮助用户快速地找到需要的知识点和操作步骤。 这本手册分为三个部分,第一部分介绍了Pandas的数据结构、基本操作和常用函数;第二部分介绍了数据清洗、合并和分组计算等高级操作;第三部分则是一些应用案例,包括如何使用Pandas处理具体的数据问题。 最值得称赞的是,该速查手册对Pandas中文别名的使用进行了充分的解释,让人容易理解并记住基础操作。此外,手册还提供了一些实用的技巧和应用案例,帮助用户更好地理解Pandas库的使用方法。 总的来说,如果你是初学者或已经掌握了一些Pandas知识的读者,这本Pandas速查手册中文 PDF将是一个非常有用的参考工具。它不仅能够帮助你快速找到需要的操作步骤,还能帮助你理解Pandas库的一些高级用法,使你的数据分析工作更加得心应手。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白墨石

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值