第1章 Pandas基础

本文介绍了Pandas的基础知识,包括读写数据、Series和DataFrame数据结构及其属性与方法。还讲解了head/tail、unique/nunique、count/value_counts等常用函数,并给出了关于Series和DataFrame属性及方法的问题作为作业,以及涉及统计分析的练习题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、基础知识

1、读取:df = pd.read_csv('data/table.csv')

2、写入:df.to_csv('data/new_table.csv')【可用于结果输出】

二、基本数据结构

series && dataframe

series的属性:

.values;

.name

.index

.dtype

series方法:

mean();

dataframe属性:

.index

.columns.

.values

.shape【返回几行几列】

dataframe方法:

mean();std();sum();....

三、常用基本函数

1. head和tail

2. unique和nunique

3. count和value_counts

4. describe和info

5. idxmax和nlargest

6. clip和replace

四、作业

1. 问题

【问题一】 Series和DataFrame有哪些常见属性和方法?

属性:Size shape dtypes index columns

方法:Head tail rename(更改行中的数据) replace unique_values sort_values describe max\min\sum\mean

【问题二】 value_counts会统计缺失值吗?

不能

【问题三】 与idxmax和nlargest功能相反的是哪两组函数?

idmax(返回最大值)——idxmin(返回最小值)

nlargest(返回前几个大的元素值)——nsmallest(返回前几个小的元素值)

【问题四】 在常用函数一节中,由于一些函数的功能比较简单,因此没有列入,现在将它们列在下面,请分别说明它们的用途并尝试使用。

sum:

  • df.sum():计算和,axis=0 按列计算,axis=1 按行计算,默认axis=0。

mean

  • df.mean():计算平均值,axis=0 按列计算,axis=1 按行计算,默认axis=0。

median

  • df.median():计算中位数,axis=0 按列计算,axis=1 按行计算,默认axis=0。

mad

  • df.mad():根据平均值计算平均绝对偏差,axis=0 按列计算,axis=1 按行计算,默认axis=0。

min

  • df.min():计算最小值,axis=0 按列计算,axis=1 按行计算,默认axis=0。

max

  • df.max():计算最大值,axis=0 按列计算,axis=1 按行计算,默认axis=0。

abs

  • df.abs():计算绝对值,axis=0 按列计算,axis=1 按行计算,默认axis=0。

std

  • df.std():计算标准差,axis=0 按列计算,axis=1 按行计算,默认axis=0。

var

  • df.var():计算方差,axis=0 按列计算,axis=1 按行计算,默认axis=0。

quantile

     quantile(q=0.75),→ quantile统计分位数,参数q确定位置

cummax:依次给出前1、2.。。n个数的最大值

cumsum

  • df.cumsum():计算累计求和,axis=0 按列计算,axis=1 按行计算,默认axis=0。

cumprod:依次给出前1、2.。。n个数的积

【问题五】 df.mean(axis=1)是什么意思?它与df.mean()的结果一样吗?第一问提到的函数也有axis参数吗?怎么使用?

axis=0 按列计算,axis=1 按行计算,默认axis=0。

 

2. 练习

【练习一】 现有一份关于美剧《权力的游戏》剧本的数据集,请解决以下问题:

(a)在所有的数据中,一共出现了多少人物?

(b)以单元格计数(即简单把一个单元格视作一句),谁说了最多的话?

(c)以单词计数,谁说了最多的单词?

【练习二】现有一份关于科比的投篮数据集,请解决如下问题:

(a)哪种action_type和combined_shot_type的组合是最多的?

(b)在所有被记录的game_id中,遭遇到最多的opponent是一个支?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值