python(10)——pandas数据分析

本文介绍了Pandas库在Python中的数据处理功能,包括创建DataFrame对象、列数据排序以及数据写入CSV文件。示例展示了如何创建和操作DataFrame,对B列数据降序排序,并将排序后的数据保存到write_data.csv。此外,还回顾了Pandas的基础知识,如Series对象、DataFrame的创建和索引操作,以及数据的算术运算和排序方法。
摘要由CSDN通过智能技术生成

Pandas 是Python的数据处理包,全名:Python Data Analysis Library,Pandas 是非常著名的开源数据处理库,我们可以通过它完成对数据集进行快速读取、转换、过滤、分析等一系列操作。Pandas库是基于Numpy库来创建的,Numpy主要用于矩阵操作,而Pandas主要用于数据处理。支持多种数据格式,甚至包括excel和SQL数据库;数据对齐,缺失数据处理,数据排序等常规数据整理操作;基于标签的数据集操作,包括切片和采样等;高性能的merge和join操作;支持时序数据操作。

1.现有如下图所示的表格数据,请对该数据进行以下操作。
A B C D
0 1 5 8 8
1 2 2 4 9
2 7 4 2 3
3 3 0 5 2

问题1:创建一个结构如上图所示的DataFrame对象。

#1

arr=np.array([[1,5,8,8],[2,2,4,9],[7,4,2,3],[3,0,5,2]])
mm=pd.DataFrame(arr)
nn=pd.DataFrame(arr,columns=['A','B','C','D'])
print(nn)

在这里插入图片描述

问题2:将图中的B列数据按降序排序。

#2

frame=pd.DataFrame([[1,5,8,8],[2,2,4,9],[7,4,2,3],[3,0,5,2]],columns=['A','B','C','D'])
print(frame)
print('B列排序后:')
print(frame.sort_values(by='B',ascending=False))

在这里插入图片描述

问题3:将排序后的数据写入到CSV文件,取名为write_data.csv.
#3
frame=pd.DataFrame([[1,5,8,8],[2,2,4,9],[7,4,2,3],[3,0,5,2]],columns=['A','B','C','D'])
frame.to_csv(r'E:\1.csv',index=False)
print("写入完毕!")
file=open(r'E:\1.csv')
file_data=pd.read_csv(file)
print(file_data)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

知识点总结
1.#1pandas的数据结构series

#1pandas的数据结构series

import pandas as pd
ser_obj=pd.Series([1,2,3])#使用Series类的构造方法来创建一个Series类对象
print(ser_obj)
ser_obj1=pd.Series([1,2,3],index=['a','b','c'])#为数据指定索引
print(ser_obj1)
print(ser_obj1['a'])
year_data={2001:17.8,2002:20.1,2003:16.5}
ser_obj2=pd.Series(year_data)
print(ser_obj2)
print(ser_obj1.index)#index属性获取Series对象的属性
print(ser_obj1.values)#values属性获取Series对象的数据

在这里插入图片描述

2.#2 pandas的数据结构dataframe

#2 pandas的数据结构dataframe

import numpy as np
import pandas as pd
arr1=np.array([['a','b','c'],['d','e','f']])
m=pd.DataFrame(arr1) #基于数组创建DataFrame对象,行索引和列索引自动从0开始print(m)
n=pd.DataFrame(arr1,columns=["No1","No2","No3"]) #自行指定列索引
print(n)
element=n['No2'] #通过列索引的方式获取一列数据
print(element)
element1=n.No2   #通过属性获取列数据
print(element1)
n['No4']=['g','h'] #增加No4一列数据
print(n)
del n['No4'] #删除No4这列数据
print(n)

在这里插入图片描述

3.#3 pandas索引操作及高级索引——索引对象

#3  pandas索引操作及高级索引——索引对象

import pandas as pd
ser_obj=pd.Series(range(5),index=['a','b','c','d','e'])
ser_index=ser_obj
print(ser_index)
print(ser_index[2])

在这里插入图片描述

4.#4 pandas 索引操作及高级索引-索引操作

#4 pandas 索引操作及高级索引-索引操作


import pandas as pd

ser_obj=pd.Series(range(5),index=['a','b','c','d','e'])
print(ser_obj[2])#使用索引位置获取数据
print(ser_obj['c']) #使用索引名获取数据
print(ser_obj[2:4])#使用位置索引进行切片
print(ser_obj['c':'e'])#使用索引名进行切片
print(ser_obj[[0,1,4]])#通过不连续位置索引获取数据
print(ser_obj[['a','b','e']])#通过不连续索引名获取数据
ser_bool=ser_obj>2 #创建bool型Series对象
print(ser_bool)
print(ser_obj[ser_bool])#获取结果为True的数据

在这里插入图片描述

5.#5 s算数运算与数据对齐

#5 s算数运算与数据对齐

import pandas as pd

obj1=pd.Series(range(10,13))
obj2=pd.Series(range(20,25))
print(obj1+obj2)

obj1=obj1.add(obj2,fill_value=0)
print(obj1)

在这里插入图片描述

6.#6 数据排序-按索引排序

#6 数据排序-按索引排序

import pandas as pd
import numpy as np
obj1=pd.Series(range(10,13))
obj2=pd.DataFrame(np.arange(9).reshape(3,3),index=[4,3,5])
print(obj1.sort_index())
print(obj1.sort_index(ascending=False))
print(obj2)
print(obj2.sort_index())
print(obj2.sort_index(axis=1,ascending=False))

在这里插入图片描述

7.#7 数据排序-按值排序

#7 数据排序-按值排序

import pandas as pd
import numpy as np

obj1=pd.Series([4,np.nan,6,np.nan,-3,2])
obj2=pd.DataFrame([[0.4,-0.1,-0.3,0.0],[0.2,0.6,-0.1,-0.7],[0.8,0.6,-0.5,0.1]])

print(obj1.sort_values())#按值升序排列
print(obj2.sort_values(by=2))#对列索引为2的数据进行排序

在这里插入图片描述

  • 7
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Pandas是一个Python库,用于数据处理和分析。在数据分析,预处理是非常重要的一步,因为它可以帮助我们清洗和转换数据,使其更适合进行分析。Pandas提供了一些强大的预处理功能,包括数据清洗、数据转换、数据重塑和数据合并等。在使用Pandas进行数据分析时,预处理是必不可少的一步。 ### 回答2: 在数据分析数据的预处理是一个必要的过程。它的主要目的是清洗数据,准备数据,以便后续分析。在Pythonpandas是一种广泛使用数据处理库。pandas可以通过其高效的数据结构和操作方法来清洗和处理数据。在本文,将介绍pandas预处理的一些常见技术。 一、读取数据pandas使用read_csv()函数读取CSV格式的数据文件,read_excel()函数读取Excel格式的数据文件。它们都有很多选项,可以根据具体文件的格式进行设置。 二、查看数据pandas使用以下函数来查看数据: 1. head() - 显示数据框的前几行; 2. tail() - 显示数据框的后几行; 3. columns - 显示数据框的名; 4. shape - 显示数据框的行数; 5. info() - 显示数据框的基本信息,包括每的名称、非空值数量和数据类型。 三、数据清洗 在数据清洗,有以下一些常见的技术: 1. 删除重复行:使用drop_duplicates()函数; 2. 替换空值:使用fillna()函数; 3. 删除空值:使用dropna()函数; 4. 更改数据类型:使用astype()函数。 四、数据准备 在数据准备,有以下一些常见的技术: 1. 数据合并:使用merge()函数; 2. 数据筛选:使用loc()函数或者iloc()函数; 3. 数据分组:使用groupby()函数; 4. 数据排序使用sort_values()函数。 五、数据分析数据分析,有以下一些常见的技术: 1. 数据聚合:使用agg()函数; 2. 统计描述:使用describe()函数; 3. 数据可视化:使用matplotlib或者seaborn库。 综上所述,pandas预处理是数据分析必不可少的一步。通过使用pandas提供的函数和方法,可以方便地清理和处理数据,使其更容易被分析。 ### 回答3: PandasPython最强大的数据处理库之一,它提供了DataFrame和Series这两种数据结构,可以快速便捷地处理数据。在数据分析过程,我们往往需要先对数据进行预处理,以便后续的分析。Pandas提供了一系的方法和函数,可以帮助我们进行数据的预处理。 首先,在进行数据分析之前,我们需要了解自己所面对的数据类型和数据结构。PandasDataFrame结构就是类似于表格的结构,每一行代表一个样本,每一代表一个属性。Series则是一维的数组结构。通过pandas.read_csv(),我们可以读取CSV格式的数据,并转化为DataFrame结构。 接下来,我们要对数据进行一些基本的处理,例如数据清洗、数据去重、缺失值处理、异常值处理等。在数据清洗过程,我们往往需要对数据进行一些特殊的处理,例如字符串的分割、合并、替换等操作,Pandas提供了一系能够对文本进行操作的函数。在数据去重方面,我们可以使用drop_duplicates()函数,它可以去除DataFrame的重复记录。在处理缺失值时,Pandas提供了一系的函数,如fillna()函数、dropna()函数,可以方便地将NaN值变为其他有意义的值,或者删除缺失值的行或。在异常值处理方面,我们可以使用isoutlier()函数来找到数据的异常值,并进行处理。 在数据预处理完成后,我们可以对数据进行一些统计分析,例如计算小计、计算总计、分位数、极差、方差、标准差等统计指标。我们可以使用describe()函数来获得数据的统计描述,还可以使用groupby()函数来对数据分组,使用agg()函数对每组进行计算统计指标。此外,我们还可以对数据进行排序、丢弃、合并等操作。 总之,Pandas是一个非常强大的Python库,可以轻松处理数据预处理和数据处理方面的任务。Pandas作为数据分析数据处理的基础库,使用熟练后可以在数据分析发挥更大的作用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值