Pandas

Pandas使用一个二维的数据结构DataFrame来存放表格式的数据。相比于Numpy,Pandas可以存放混合数据类型的数据,同时可用NaN表示缺失的数据,而不用像Numpy一样要手工处理缺失数据。

读取数据

Pandas使用函数read_csv()来读取csv文件

import pandas

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

print(type(food_info))
# 输出:<class 'pandas.core.frame.DataFrame'> 返回一个DataFrame类对象

food_info.csv内容如下:

可使用head()方法显示前n条数据,若未指定参数,则默认显示前5条

first_rows = food_info.head(5)

可使用columns属性显示全部的列名

print(food_info.columns)

# 输出全部的列名,而不是用省略号代替
Index(['NDB_No', 'Shrt_Desc', 'Water_(g)', 'Energ_Kcal', 'Protein_(g)', 'Lipid_Tot_(g)', 'Ash_(g)', 'Carbohydrt_(g)', 'Fiber_TD_(g)', 'Sugar_Tot_(g)', 'Calcium_(mg)', 'Iron_(mg)', 'Magnesium_(mg)', 'Phosphorus_(mg)', 'Potassium_(mg)', 'Sodium_(mg)', 'Zinc_(mg)', 'Copper_(mg)', 'Manganese_(mg)', 'Selenium_(mcg)', 'Vit_C_(mg)', 'Thiamin_(mg)', 'Riboflavin_(mg)', 'Niacin_(mg)', 'Vit_B6_(mg)', 'Vit_B12_(mcg)', 'Vit_A_IU', 'Vit_A_RAE', 'Vit_E_(mg)', 'Vit_D_mcg', 'Vit_D_IU', 'Vit_K_(mcg)', 'FA_Sat_(g)', 'FA_Mono_(g)', 'FA_Poly_(g)', 'Cholestrl_(mg)'], dtype='object')

 可将columns的输出转换为list类型

food_info.columns.tolist()
# 将columns的输出转换为list类型

有shape属性显示表格的维度

print(food_info.shape)
# 输出(8618, 36)

 各个列可使用的数据类型包括:

  • object -- 字符串类型
  • int -- 整型
  • float -- 浮点数类型
  • datetime -- 时间类型
  • bool -- 布尔类型

dtypes属性会给出每一列数据的数据类型

print(food_info.dtypes)
# 输出:每一列对应的数据类型

NDB_No            int64

Shrt_Desc           object

Water_(g)           float64

Energ_Kcal          int64

Protein_(g)          float64

...

创建一个Pandas DataFrame对象:

df = pandas.DataFrame([[1, 2], [4, 5], [7, 8]],
     index=['cobra', 'viper', 'sidewinder'],
     columns=['max_speed', 'shield'])

 返回数据如下:

 max_speedshield
cobra12
viper45
sidewinder78

若不指定index和columns:

df = pandas.DataFrame([[1, 2], [4, 5], [7, 8]])

则从0开始对其index和columns编号 

 01
012
145
278

 

读取某一行的数据:

df.loc[index],若没有指定index,则输入行号(从0开始)

读取某一列的数据:

df[column],若没有指定column,则输入column(从0开始)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值