【习题之Python篇】习题10(Pandas基础练习)

首先要导入这些模块

import numpy as np
import pandas as pd
from pandas import Series
from pandas import DataFrame

1.创建Series数据对象赋值给变量名为x的变量,其值如下图所示:

【习题之Python篇】习题10(Pandas基础练习)_第1张图片

x=Series(np.arange(10),index=["A"+str(i) for i in range(10)])   #将i变为字符串为了与'A'字符串连接

结果:

【习题之Python篇】习题10(Pandas基础练习)_第2张图片


2.创建Series数据对象赋值给变量y,其值如下图所示:

【习题之Python篇】习题10(Pandas基础练习)_第3张图片

 y=Series(np.arange(0,19,2),index=['A'+str(i) for i in range(10)])

结果:
【习题之Python篇】习题10(Pandas基础练习)_第4张图片



3.计算并查看x+y,x*y的结果。

【习题之Python篇】习题10(Pandas基础练习)_第5张图片【习题之Python篇】习题10(Pandas基础练习)_第6张图片


4.查看y的索引,并将其索引重新赋值,而后其值如下图所示:再次计算x+y,观察运行结果,并分析得到自己的结论。

【习题之Python篇】习题10(Pandas基础练习)_第7张图片

y.index=["t"+str(i) for i in range(10,20)]

结果:
【习题之Python篇】习题10(Pandas基础练习)_第8张图片
之后在与上一步的x相加就会出现这个情况:
【习题之Python篇】习题10(Pandas基础练习)_第9张图片


5.创建由下图所示的Dataframe,命名为data:

【习题之Python篇】习题10(Pandas基础练习)_第10张图片

dic ={
     "city":["Beijing",'shanghai','shenzhen'],'year':[2000,2001,2002],'item':[12,55,33]}
data=DataFrame(dic)

#这里我们采用字典的形式创建

结果:【习题之Python篇】习题10(Pandas基础练习)_第11张图片


6. 新增一列,列名为“book”,其值为“Beijin001,Shanghai002,Shenzhen003”,如下图所示:

【习题之Python篇】习题10(Pandas基础练习)_第12张图片

 data['book']=['Beijin001','Shanghai002','Shenzhen003']

结果:
【习题之Python篇】习题10(Pandas基础练习)_第13张图片


7. 查看data中item数据大于30的数据内容。

data.loc[data['item']>=30]

结果:
【习题之Python篇】习题10(Pandas基础练习)_第14张图片
小知识:
data.iloc[:3] #只能按照行位置,来取数据
data.loc[‘city’] #按照行标签取数据也可切片取元素
例:

data.loc[:,'city']

结果:
在这里插入图片描述


8. A超市最近促销活动中,下表为促销活动中,销售量最高的四种商品:

编码 名称 类别 价格 销量

0237 佳洁士牙膏 日用品 8.5 420

0653 汰渍洗衣液 日用品 33 240

2059 奥王订书机 文具 14.5 180

7230 统一方便面 食品 3.6 1050



(1) 读取该表“超市促销.xlsx”,赋值给d_sale,并查看;

d_sale=pd.read_excel("d://超市促销.xlsx",header=0)

结果:
【习题之Python篇】习题10(Pandas基础练习)_第15张图片

注意:
首先要将你的Excel表放在你指定目录上,这样才可以读到,并输出
【习题之Python篇】习题10(Pandas基础练习)_第16张图片


(2) 将佳洁士牙膏的价格修改为9.5;将前两种商品的类别改为“清洁用品”;

d_sale.loc[d_sale.index[d_sale['名称']=='佳洁士牙膏'],'价格']=9.5
#用索引找到'佳洁士牙膏'行号,再用loc()进行定位,将原来的值覆盖
d_sale.loc[[0,1],'类别']='清洁用品'

结果:
【习题之Python篇】习题10(Pandas基础练习)_第17张图片


(3) 计算四种商品的销售额,并将该值加在d_sale的最后一列。查看d_sale;

【习题之Python篇】习题10(Pandas基础练习)_第18张图片

d_sale['销售额']=d_sale.values[:,3:4] * d_sale.values[:,4:5]

结果:
【习题之Python篇】习题10(Pandas基础练习)_第19张图片


(4) 查看该表中销售额最高的商品的所有信息。

d_sale.loc[d_sale.index[d_sale['销售额']==d_sale['销售额'].max()]]

#先将‘销售额’最大的找出来,之后定位输出行号,显示信息

结果:
在这里插入图片描述

你可能感兴趣的:(python笔记,python,pandas)