python数据分析笔记-2Pandas基础

二、Pandas基础

额外说明:
1.Python title() 方法返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写(见 istitle())。
2.Python str.format()函数,它增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 % 。
format 函数可以接受不限个参数,位置可以不按顺序。
3.Python 字典(Dictionary) keys() 函数以列表返回一个字典所有的键。

series常用属性和函数汇总

import pandas as pd

1.Pandas库

  • Pandas主要有两种数据结构:Series和DataFrame
  • Series:是一维标记的数组,能够保存任何数据类型(整数,字符串,浮点数,Python对象等)。轴标签统称为索引。基本操作类似ndarray和字典,并且是大多数NumPy函数的有效参数。但是,切片等操作也会对索引进行切片。
  • 引入:
    from Pandas import Series, DataFrame

2.Series操作

1)Series创建

创建Series

Series(data, index=index, name=name)

Series创建方式:

  • 使用python列表创建
  • 使用标量值创建
  • 使用字典类型创建:按照index指定键的顺序作为索引,如果键对应的值不存在,显示NaN
  • 使用ndarray创建
pd.Series(np.arange(5))

np.arange

函数返回一个有终点和起点的固定步长的排列,如[1,2,3,4,5],起点是1,终点是5,步长为1。
参数个数情况: np.arange()函数分为一个参数,两个参数,三个参数三种情况
1)一个参数时,参数值为终点,起点取默认值0,步长取默认值1。
2)两个参数时,第一个参数为起点,第二个参数为终点,步长取默认值1。
3)三个参数时,第一个参数为起点,第二个参数为终点,第三个参数为步长。其中步长支持小数

2)Series访问

参考
参考文献2

  • 1) Series对象的index和values属性:
    s.index:获得索引列表
    s.values:获得数据列表
  • 2)Series对象本身及其索引的name属性
  • 3)访问Series对象的数据:
    位置索引访问
    标签索引访问
    切片索引访问
    布尔型访问(条件过滤访问)

3)Series删除

  • drop函数:返回删除的数据,但源数据不改变
  • pop函数:返回删除的数据,源数据改变
    pop位置索引删除和pop其index删除写法不一样
import pandas as pd

ser1 = pd.Series([10,20,30,40,50], index=['a', 'b', 'c', 'd','e'])
ser2 = pd.Series(range(5))
x1 = ser1.drop('c')
print('drop删除后的结果x_1为:\n', x1)
print('drop删除后源数据:\n', ser1)
print('\n')
x2 = ser1.drop(['a','e'])
print('drop删除后的结果x_2为:\n', x2)
print('drop删除后源数据:\n', ser1)
print('\n')
x3 = ser1.pop('c')
print('pop删除的x_3为:\n', x3)
print('pop删除后源数据:\n', ser1)
print('\n')
x4 = ser2.pop(3)
print('pop删除的x_4为:\n', x4)
print('pop删除后源数据:\n', ser2)
drop删除后的结果x_1为:
 a    10
b    20
d    40
e    50
dtype: int64
drop删除后源数据:
 a    10
b    20
c    30
d    40
e    50
dtype: int64


drop删除后的结果x_2为:
 b    20
c    30
d    40
dtype: int64
drop删除后源数据:
 a    10
b    20
c    30
d    40
e    50
dtype: int64


pop删除的x_3为:
 30
pop删除后源数据:
 a    10
b    20
d    40
e    50
dtype: int64


pop删除的x_4为:
 3
pop删除后源数据:
 0    0
1    1
2    2
4    4
dtype: int64

Process finished with exit code 0

4)Series修改

  • 通过索引修改数据
import pandas as pd

ser3 = pd.Series(range(10,60,10), index= list('abcde'))
print('ser3:\n',ser3)
ser3[0] = 100
ser3['c'] = 300
print('ser3:\n',ser3)
ser3:
 a    10
b    20
c    30
d    40
e    50
dtype: int64
ser3:
 a    100
b     20
c    300
d     40
e     50
dtype: int64

Process finished with exit code 0

5)Series添加

  • 通过索引访问添加
  • append方法末尾添加,返回副本,源数据不变

2.DataFrame操作

DataFrame基本属性

属性

查询访问DataFrame中的数据

  • 访问单列数据
  • 访问多列数据
  • 访问多行数据
    访问

筛选DataFrame中的数据(重要,需熟练掌握)

  • 按照条件筛选数据:and(&与)、or(|或)、not(~非)、xor(^异或)
  • 使用loc切片方法(更多使用该方法):
    • DataFrame.loc [行索引名称或条件,列索引名称]
    • 行索引为区间时,前后都闭合
  • 使用iloc切片方法
    • DataFrame.iloc[行索引位置,列索引位置]
    • 行索引为区间时,前闭后开

注意:loc 更加灵活多变,代码可读性更高,iloc 代码简洁,但可读性不高,建议多使用 loc 方法

添加DataFrame中的数据

  • 添加一列
    • 新建一个列索引,并赋固定值或非固定值,添加到最后一列
  • 插入一列
    • df.insert(int = 位置, column = 列名, value = 插入的值)
    • 插入的值可以是固定值、列表、Series
  • 添加一行
    • loc[rowIndex]方法添加行到末尾,直接修改源数据
    • append方法添加行到末尾,返回副本,源数据不变

删除DataFrame中的数据

  • 删除列
    • df.drop(labels=列名,axis=1,inplace=True)
    • axis=1 表示列,inplace=True表示改变源数据
  • 删除行
    • df.drop(labels=索引,axis=0,inplace=True)
    • axis=0 表示行,inplace=True表示改变源数据
  • 修改DataFrame中的数据
    • 使用 loc方法 获取数据并赋值修改

3.pandas汇总统计和计算

基于NumPy的统计函数

pandas库是基于NumPy,可以用NumPy提供的函数对数据进行描述性统计。
统计

基于pandas描述性统计方法

pandas统计方法

类别型数据统计(重要)

  • 描述类别特征的分布状况,可以使用频数统计表。
    • pandas库中实现频数统计的方法为value_counts。
  • describe方法能支持对category类型的数据进行描述性统计
    • 返回四个统计量,分别为列非空元素的数目、类别数目、数目最多的类别、数目最多类别的数目
    • pandas提供了categorites类,可以使用astype方法将目标特征的数据类型转换为category类别。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
学习数据分析是当代信息时代的一项重要技能,Python作为一种强大的编程语言,是数据分析的热门工具之一。以下是我在学习利用Python进行数据分析过程中的一些笔记。 首先,学习Python基础知识是必不可少的。了解Python的基本语法、数据类型、循环和条件语句等知识对于数据分析的学习非常重要。我通过自学网课和阅读相关书籍,逐渐掌握了Python基础知识。 其次,学习使用Python数据分析库。在Python中,有很多强大的数据分析库,例如NumPy、Pandas和Matplotlib等。我通过学习这些库的用法,掌握了数据的处理、清洗、分析和可视化的技巧。我学习了如何使用NumPy进行矩阵运算和数值计算,如何使用Pandas进行数据处理和数据操作,以及如何使用Matplotlib进行数据可视化。 除了数据分析库,学习Python的机器学习库也是必不可少的。机器学习在数据分析中扮演着重要角色,Python中有很多优秀的机器学习库,例如Scikit-learn和TensorFlow。我通过学习这些库的使用,了解了机器学习的基本概念和常用算法,例如回归、分类和聚类等。我也学习了如何使用这些库来构建和训练机器学习模型。 最后,实践是学习的关键。在学习的过程中,我通过实践项目来巩固所学知识。我选择了一些真实的数据集,并运用Python数据分析技术进行数据处理、分析和可视化。通过实践,我不仅掌握了数据分析的具体步骤和方法,还锻炼了自己解决实际问题的能力。 总的来说,学习利用Python进行数据分析需要掌握Python基础知识、数据分析库和机器学习库的使用,同时也需要通过实践项目来巩固所学知识。这个过程需要持续不断的学习和实践,但是通过不断的努力和实践,我相信能够掌握Python进行数据分析的技能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Max_J999

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

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

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

打赏作者

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

抵扣说明:

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

余额充值