实验三 Pandas库的运用

本文围绕Pandas库展开,讲解了如何创建和操作一维和二维数据表格,涉及索引、排序、统计功能的实战应用。
摘要由CSDN通过智能技术生成

Pandas库的运用

目录

Pandas库的运用

一、实验目的和要求

二、实验环境

三、实验内容

四、实验步骤和结果


一、实验目的和要求

(1)分别设计一个一维数据表格和一个二维的数据表格,使用pandas库分别创建一个Series对象和DataFrame对象。

(2)对创建的Series对象和DataFrame对象练习索引操作。

(3)对创建的Series对象和DataFrame对象练习排序操作。

(4)设计一个新的DataFrame对象,练习DataFrame对象的统计计算和统计描述的功能。

(5)能够熟练使用Pandas库创建Series对象和DataFrame对象,并对对创建的对象索引、排序,及统计计算和分析操作。

二、实验环境

Windows 11系统

Anaconda Navigator

Jupyter Notebook

三、实验内容

1. 创建一个DataFrame(df),用data做数据,labels做行索引

import numpy as np
data = {'animal': ['cat', 'cat', 'snake', 'dog', 'dog', 'cat', 'snake', 'cat', 'dog', 'dog'],
      'age': [2.5, 3, 0.5, np.nan, 5, 2, 4.5, np.nan, 7, 3],
      'visits': [1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
      'priority': ['yes', 'yes', 'no', 'yes', 'no', 'no', 'no', 'yes', 'no', 'no']}
labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']

2.显示有关此df及其数据的基本信息的摘

3.查看此df的前三行数据

4. 选择df中列标签为animalage的数据

5.选择行为[‘d’, ‘e’, ‘i’],且列为['animal', 'age']中的数据

6.选择visuts大于3的行

7.选择age为缺失值的行

8.选择animalcat,且age小于3的行

9.将f行的age改为1.5

10.计算visits列的数据总和

11.计算每种animal的平均age

12.追加一行(k),列的数据自定义(如可以等于a行的数据),然后再删除新追加的k行

13.计算每种animal的个数(cat有几个,dog几个...)

14.先根据age降序排列,再根据visits升序排列

15.将priority列的yesnoTrueFalse替换

16.将animal列的snakepython替换

四、实验步骤和结果

1. 创建一个DataFrame(df),用data做数据,labels做行索引

2.显示有关此df及其数据的基本信息的摘

import pandas as pd
import numpy as np
data = {'animal': pd.Series(['cat', 'cat', 'snake', 'dog', 'dog', 'cat', 'snake', 'cat', 'dog', 'dog'],
                            index=labels),
      'age': pd.Series([2.5, 3, 0.5, np.nan, 5, 2, 4.5, np.nan, 7, 3],
                      index=labels),
      'visits': pd.Series([1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
                         index=labels),
      'priority': pd.Series(['yes', 'yes', 'no', 'yes', 'no', 'no', 'no', 'yes', 'no', 'no'],
                            index=labels)}
labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
df = pd.DataFrame(data)
print(df)

3.查看此df的前三行数据

print(df[0:3])

4. 选择df中列标签为animalage的数据

print(df[['animal','age']])

5.选择行为[‘d’, ‘e’, ‘i’],且列为['animal', 'age']中的数据

print(df.loc[['d','e','i'],['animal','age']])

6.选择visuts大于3的行

visits_bool = df['visits']>3
print(df[visits_bool])

7.选择age为缺失值的行

age_bool = df['age'].isnull()
print(df[age_bool])

8.选择animalcat,且age小于3的行

print(df[(df['animal']=="cat")&(df["age"]<3)])

9.将f行的age改为1.5

df.loc[['f'],['age']] = 1.5
print(df)

10.计算visits列的数据总和

print(sum(df['visits']))

11.计算每种animal的平均age

print(df.groupby('animal')['age'].mean())

12.追加一行(k),列的数据自定义(如可以等于a行的数据),然后再删除新追加的k行

df.loc['k']=df.loc['a'].values
print(df)
print(df.drop('k'))

13.计算每种animal的个数(cat有几个,dog几个...)

print(df.groupby('animal').size())

14.先根据age降序排列,再根据visits升序排列

df.sort_values(by=['age', 'visits'], ascending=[False, True])

15.将priority列的yesnoTrueFalse替换

df['priority'] = df['priority'].replace(to_replace=['yes', 'no'], value=[True, False])
print(df)

16.将animal列的snakepython替换

df['animal'] = df['animal'].replace(to_replace='snake', value='python')
print(df)

  • 25
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

噗-噗

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

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

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

打赏作者

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

抵扣说明:

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

余额充值