pandas学习笔记

Pandas库的介绍

Pandas是一个开放源码的Python库,它使用强大的数据结构提供高性能的数据操作和分析工具。Pandas的主要特点:

快速高效的DataFrame对象,具有默认和自定义的索引。

将数据从不同文件格式加载到内存中的数据对象的工具。

丢失数据的数据对齐和综合处理。

重组和摆动日期集。

基于标签的切片,索引和大数据集的子集。

可以删除或插入来自数据结构的列。

按数据分组进行聚合和转换。

高性能合并和数据加入。

时间序列功能。

常用方法

csv文件下载 密码:m8af

import pandas as pd

# 读取一个csv文件,转换成food_info对象

food_info = pd.read_csv('food_info.csv')

# 输出每一列的dtype类型

food_info.dtypes

# 输出对象的前3行,不指定默认为前5行

food_info.head(3)

# 输出对象的后3行,不指定默认为后5行

food_info.tail(3)

# 查看对象的形状\维度

food_info.shape

# 根据索引号获取第一行的数据

food_info.loc[0]

# 根据切片获取指定行数数据

food_info.loc[3:8]

# 根据列名取一列数据,列名是csv文件中的第一行

food_info['Shrt_Desc']

# 判断是否缺失 nan,值是否为空返回一个布尔值列表

# 对缺失值的处理方式:可以直接去除、 或者填充当前列的平均值,补充为完整的样本

pd.isnull(food_info)

pd.isnull(food_info['Shrt_Desc'])

# 定义一个list,根据这个list可以取多列

columns = ['NDB_No', 'Shrt_Desc']

food_info[columns]

# 获取对象中的所有列名,并将列名转换为list

info_columns = food_info.columns

columns_list = info_columns.tolist()

# 获取对象中所有列名以(g)单位为结尾的列,并且回传到food_info,使g_food_info只包含以(g)结尾的列

g_columns = []

for cin columns_list:

# 转不转成string都可以,因为ide不知道c的类型,自动补齐方法永不了,所以我手动转成string

    c =str(c)

if c.endswith('(g)'):

g_columns.append(c)

g_food_info = food_info[g_columns]

# 加减乘除:所有项都乘1000

iron_mg_column = food_info['Iron_(mg)']

iron_mg_column = iron_mg_column *1000

# 加减乘除:如果是相同维度,则会计算相同的位置

iron_mg_columns = food_info['Iron_(mg)'] * food_info['Calcium_(mg)']

# 像food_info中传入新的一列,指定列名和数据,此时foodinfo维度也会发生改变

food_info['abcd'] = iron_mg_columns

# 最大值、最小、求和之类的操作也和numpy差不多

food_info['Iron_(mg)'].max

food_info['Iron_(mg)'].min

food_info['Iron_(mg)'].sum

# 将列进行排序

# inplace:是否在原对象food_info上作出改变,如果为false,food_info中只有'Water_(g)'进行排序。如果是true,整个food_info的所有列都根据'Water_(g)'进行排序

# ascending:false为降序,true为升序(升序为默认值,所以可以省略)

values = food_info.sort_values('Water_(g)', inplace=True, ascending=False)

后续

你可能感兴趣的:(pandas学习笔记)