“第二课堂”团队实践pandas课堂笔记

Pandas是Python中一个非常强大的数据处理库,它提供了快速、灵活且表达式丰富的数据结构,旨在使“关系”或“标签”数据的处理工作变得既简单又直观。Pandas的两个主要数据结构是Series(一维数组)和DataFrame(二维的、表格型的数据结构)。以下是一些Pandas基础函数和使用和总结。

cmd指令下:

创建conda环境:conda create -n env_name python=3.12.4

进入环境:conda activate env_name

#退出环境:conda deactivate

安装numpy和pandas:

pip install numpy

pip install pandas

导入numpy和pandas两个库:

import numpy as np

import pands as pd

pandas内置函数:#使用编程进行Excel表格操作

显示csv数据表:

相对路径载入数据:

df = pd.read_csv(‘./train.csv’)

绝对路径载入数据:

df = pd.read_csv(r‘D:\.mycode\pandas入门\train.csv’)

将csv数据分块:chunker = pd.read_csv(‘./train.csv’,chunksize=10)

逐块读取:for i in chunker:

                               print(i)

读取函数的其中一个参数names代表表头,修改时以列表形式输入,输入循序为倒序:

df.=pd.read_csv(‘train.csv’,names=[‘乘客ID’,’是否幸存’,’仓位等级’,‘姓名’,’性别’,’年龄’,’兄弟姐妹个数’])    

查看数据基本信息:df.info()

查看前10行数据:df.head(10)

查看后15行数据:df.tail(15)

查看前5行数据项是否为空, 为空则返回Ture,其余返回False:df.isnull().head(5)

将修改后的数据变量保存:

df.to_csv(‘train_chinese.csv’)

pandas有两个数据类型:

DataFrame和Series # 其中DataFrame支持表格化展示数据

查看变量名为sdata的数据类型为Series的变量情况:

(所谓的查看就是用变量储存数据并展示)

example_1 = pd.Series(sdata)#将变量sdata储存到变量Example_1中

example_1#展示数据

查看变量名为data的数据类型为DataFrame的变量情况:

(所谓的查看就是用变量储存数据并展示)

example_2 = pd.DataFrame(data)#将变量data储存到变量Example_2中

example_2#展示数据

查看每列的名称:

df.columns

查看‘cabin’这列的前三项值:

  1. df[‘cabin’].head(3)
  2. df.cabin.head(3)

test1变量接收test_1.csv表格:

test1 = pd.read_csv(‘test_1.csv’)

删除变量test1中的‘a’列:del test1 [‘a’]

展示test1表格的前三行:test1.head(3)

隐藏某些列元素并展示前三行:df.drop([‘PassengerId’,’Name’,’Age’,’Ticket’],axis=1).head(3)

要展示删除后的表格还需要将上面代码赋值给变量并展示

筛选:以’Age’为条件,显示年龄在10岁以下的乘客信息:

df[df[‘Age’]<10].head(3)

筛选:以’Age’为条件,显示年龄在10岁以上且50岁以下的乘客信息:

midage = df[(df[‘Age’]>10)&(df[‘Age’]<50)]# 赋值

midage.head(3)#展示

只展示midage数据的第100行的‘Pclass’和’Sex’数据:

midage.loc[[100],[‘Pclass’,’Sex’]]# 追踪显示对应行上的列表内内容

midage.loc[[100,105,108],[‘Pclass’,’Name’,’Sex’]]#行数列名检索

使用iloc方法执行上述操作:

#‘Pclass’,’Name’,’Sex’在变量中分别为2,3,4列

midage.iloc[[100,105,108],[2,3,4]]#行列均采用数坐标检索

numpy:#构建矩阵

构建2X4矩阵,使用DataFrame类型的变量frame接收:

frame = pd.DataFrame(np.arange(8).reshape((2,4)), # 用0-7填充数据项

                                   index=[‘2’, ’1’],#指定列标题为’2’, ’1’

                                   columns=[‘d’,’a’,’b’,’c’]#指定行标题为’d’,’a’,’b’,’c’)
frame

根据‘c’列做升序值排序:

frame.sort_values(by=’c’,ascending=False)

行索引升序排序:frame.sort_index()

列索引升序排序:frame.sort_index(axis=1)

列索引降序排序:frame.sort_index(axis=1,ascending=False)

选择‘a’和‘c’两行进行降序排序:

frame.sort_values(by=[‘a’,’c’],ascending=False)

选择‘票价’和‘年龄’综合排序:

text.sort_values(by=[‘票价’,’年龄’],ascending=False)

DataFrame类型变量相加:

frame1_a+frame1_b

#行列标题均一致的数据项相加

#返回新的DataFrame类型数据

#有行列标题无法匹配时,该数据项返回NaN

计算泰塔尼克号船上最大的家族有多少人(兄弟姐妹+父母子女):

max(text[‘兄弟姐妹个数’]+text[‘父母子女个数’])

#先做两个DataFrame类型数据的求和,再找出最大数据项

构建DataFrame类型数据frame2:#自赋值

frame2 = pd.DataFrame([[1.4, np.nan],

[7.1, -4.5],

[np.nan, np.nan]

[0.75,-1.3]

], index=[‘a’,’b’,’c’,’d’], columns=[‘one’, ‘two’])

frame2

调用describe函数观察基本信息:

‘’‘

列标题注释:

count:样本数据大小         mean:样本数据的平均值         std:样本标准差

min:样本数据的最小值           25%:样本数据25%的时候的值         

50%,75%,max等自行类比

‘’’

frame2.describe()

#调用后会对frame2进行数据处理, 求出以上8个数值,构建新的DataFrame类型数据并展示

describe的单列调用:

text[‘票价’].describe()

text[‘父母子女个数’].describe()

作者正在学习的以上函数和方法,是 Pandas 强大功能的入门级学习。Pandas 的设计使得数据处理和分析变得更加简单和高效。在实际应用中,可以根据具体需求选择合适的函数来处理数据。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值