初学者,了解Pandas-Day15

Pandas是一个开源的Python库,是基于NumPy的一种工具,提供了数据结构和数据分析工具,使得Python可以更轻松地处理数据。Pandas的主要数据结构是Series和DataFrame,它们可以用来处理不同类型的数据,如数值型、字符串型、时间序列等。Pandas包含了许多功能,如数据清洗、数据转换、数据合并、数据过滤等,使得数据处理变得更加简单和高效。该库常用于数据分析、数据可视化、机器学习等领域。

Windows下安装(运行管理员模式的终端):pip install pandas

导入pandas模块:import pandas as pd
 

Pandas有两大主要数据结构:
① Series(一维数据)
② DataFrame(二维数据)

pandas之Series系列: 

Series是 Pandas中的一种一维标记型数据结构,类似于一维数组。
Series具有以下一些主要特点:
1. 包含数据:可以是各种数据类型,如整数、浮点数、字符串等。
2. 索引:每个元素都有与之对应的索引。
3. 操作灵活:支持多种数据操作和运算。

函数:pd.Series(data,index,dtype,name,copy=False)
参数:
- data:一组数据(ndarray、list、tuple、dict)
- index:数据索引标签,如果不指定,默认RangeIndex(0,1,2,...,n)
- dtype:数据类型,默认会自己判断
- name:设置名称
- copy:拷贝数据,默认为False

Series的属性:
- .shape 形状属性
- .ndim 维度属性
- .size 元素个数
- .dtype 数据类型
- .empty 数据是否为空
- .index 索引标签,可以通过此属性修改数组的索引
- .values 返回numpy的ndarray数组

Series索引和切片操作:
Series索引和切片操作和一维的ndarray数组操作相同,同时可以使用标签索引

使用索引切片:

Series布尔掩码操作和一维数组的ndarray掩码操作相同:

Series标签筛选操作:
在索引过程中使用整数或自定义标签列表或数组可以对Series的数据进行筛选

Series的字符串操作: 

Pandas中的Series对象支持许多字符串操作,这些操作可以方便地处理Series对象中的文本数据。一些常见的字符串操作包括:

  1. 字符串长度:使用str.len()方法获取每个字符串的长度。

  2. 大小写转换:使用str.lower()、str.upper()、str.capitalize()等方法进行大小写转换。
  3. 字符串拼接:使用str.cat()方法可以将两个字符串的Series对象进行拼接。
  4. 字符串分割:使用str.split()方法可以按照指定的分隔符将字符串拆分成Series对象。

  5. 字符串替换:使用str.replace()方法可以替换字符串中的指定子串。

  6. 字符串匹配:使用str.contains()方法可以判断字符串中是否包含指定的子串。

  7. 字符串提取:使用str.extract()方法可以提取指定模式的子字符串。
  8. 字符串去除空格:使用str.strip()方法可以去除字符串两端的空格。

  9. 字符串索引:使用.str[]可以对字符串进行索引,获取指定位置的字符。

 Series的其他常用方法:
Series.isna()/Series.isnull()判断是否为缺失值
Series.fillna(value,inplaceFalse) 填充缺失值
Series.isin(列表或Series) 判断元素是否在指定的容器中
Series.unique() 元素去重
Series. nunique() 去重计数(返回类别个数)
Series.value counts() 元素频数统计
Series.map(函数或字典) 根据输入字典或函数映射Series的值
Series.shift(periods=1) 按索引的方向移动指定的步数

Pandas之DataFrame数据帧:

DataFrame是Pandas中最重要的数据结构之一,它类似于电子表格或数据库中的数据表,是一个二维的、大小可变的、带有行标签和列标签的数据结构。DataFrame可以包含多种数据类型的数据,并且可以进行许多类似于SQL的操作,比如筛选、合并、连接、分组、聚合等。
创建DataFrame可以通过多种方式,比如从字典、数组、列表等数据结构中创建。DataFrame中的每一列都是一个Series对象,可以按列名来访问数据,也可以按照行索引来访问数据。DataFrame也提供了许多方法来处理数据,比如描述性统计、缺失值处理、数据透视等。
Pandas中使用DataFrame可以方便快速地进行数据处理和分析,适用于各种数据分析任务,比如数据清洗、数据可视化、模型训练等。

DataFrame具有以下特点:
1.列可以是不同的类型
2.大小可变
3.行和列都支持自定义索引
4.针对行与列进行轴向统计(水平,垂直)

函数:
pandas.DataFrame(data=数据,index=索引,columns=列标签,dtype=类型,copy=False)

DataFrame的属性:

DataFrame具有许多属性,这些属性可以帮助我们了解DataFrame的结构和内容。以下是一些常用的DataFrame属性:

  1. shape:返回DataFrame的行数和列数。
  2. columns:返回DataFrame的列标签。
  3. index:返回DataFrame的行索引。
  4. dtypes:返回DataFrame每一列的数据类型。
  5. values:返回DataFrame中的数据,以二维数组的形式呈现。
  6. empty:返回一个布尔值,表示DataFrame是否为空。
  7. size:返回DataFrame中的总元素个数。
  8. ndim:返回DataFrame的维度,一般为2。
  9. loc:用标签来访问行和列的数据。
  10. iloc:用整数位置来访问行和列的数据。
  11. head():返回DataFrame的前几行,默认前5行。
  12. tail():返回DataFrame的后几行,默认后5行。

DataFrame的索引操作: 

对单列数据的访问并返回Series
DataFrame['列名']
#或
DataFrame.列名  #列名必须为 变量名的命名规则
对多列数据的访问并返回DataFrame
DataFrame[['列名1,'列名2,'列名3'...]]

DataFrame添加列:
 用等长度的数组或者系列增加一列
DataFrame['新列名']= 数组或系列
示例
df1['化学’] =np.random.randint(1,100, 6)
df1

 DataFrame删除列:

用del语句删除一列
del DataFrame['列名']

DataFrame行的访问
如果只是需要访问DataFrame某几行数据的实现方式则采用数组的切片直接选取并返回切片后的DataFrame。
语法
DataFrame[开始行索引:结束行索引:步长]

DataFrame的loc和iloc属性
用DataFrame.iloc属性,可以将DataFrame看成是二维数组,可以使用整数对DataFrame的行进行索引和切片操作。
- 语法
DataFrame.iloc[整数、整数列表、切片或者布尔掩码的数组]
用DataFrame.oc属性,可以使用标签对DataFrame的行进行索引和切片操作。
- 语法
DataFrame.loc[标签索引或切片]

 DataFrame的掩码操作同numpy 的ndarray掩码操作基本一致,掩码可以使用存储布尔数据类型的Series或者numpy的一维数组。

DataFrame常用的方法:包括数据选择、筛选、排序、合并、聚合以及数据处理等,以下是一些常用的DataFrame方法:

  1. head():返回DataFrame的前几行,默认前5行。
  2. tail():返回DataFrame的后几行,默认后5行。
  3. describe():对DataFrame中的数值型数据进行描述性统计分析。
  4. info():显示DataFrame的基本信息,包括每列的非空值个数和数据类型。
  5. dropna():删除包含缺失值的行或列。
  6. fillna():填充缺失值。
  7. drop_duplicates():删除重复行。
  8. groupby():按照指定的列或列组进行分组。
  9. sort_values():按照指定的列对数据进行排序。
  10. merge():合并两个DataFrame。
  11. concat():沿指定轴合并多个DataFrame。
  12. apply():对DataFrame中的数据进行自定义函数处理。
  13. plot():绘制DataFrame中数据的图表。
  14. to_csv():将DataFrame保存为CSV文件。
  15. to_excel():将DataFrame保存为Excel文件。
  • 15
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值