数据出路 -----pandas

Pandas 是 Python 语言的一个扩展程序库,用于数据分析。

Pandas 的主要数据结构是 Series (一维数据)与 DataFrame(二维数据)。

数据结构

Series 是一种类似于一维数组的对象,它由一组数据(各种 Numpy 数据类型)以及一组与之相关的数据标签(即索引)组成。

DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。

Pandas 应用

Pandas 在数据科学和数据分析领域中具有广泛的应用,其主要优势在于能够处理和分析结构化数据。

以下是 Pandas 的一些主要应用领域:

  • 数据清洗和预处理: Pandas被广泛用于清理和预处理数据,包括处理缺失值、异常值、重复值等。它提供了各种方法来使数据更适合进行进一步的分析。

  • 数据分析和统计: Pandas使数据分析变得更加简单,通过DataFrame和Series的灵活操作,用户可以轻松地进行统计分析、汇总、聚合等操作。从均值、中位数到标准差和相关性分析,Pandas都提供了丰富的功能。

  • 数据可视化: 将Pandas与Matplotlib、Seaborn等数据可视化库结合使用,可以创建各种图表和图形,从而更直观地理解数据分布和趋势。这对于数据科学家、分析师和决策者来说都是关键的。

  • 时间序列分析: Pandas在处理时间序列数据方面表现出色,支持对日期和时间进行高效操作。这对于金融领域、生产领域以及其他需要处理时间序列的行业尤为重要。

  • 机器学习和数据建模: 在机器学习中,数据预处理是非常关键的一步,而Pandas提供了强大的功能来处理和准备数据。它可以帮助用户将数据整理成适用于机器学习算法的格式。

  • 数据库操作: Pandas可以轻松地与数据库进行交互,从数据库中导入数据到DataFrame中,进行分析和处理,然后将结果导回数据库。这在数据库管理和分析中非常有用。

  • 实时数据分析: 对于需要实时监控和分析数据的应用,Pandas的高效性能使其成为一个强大的工具。结合其他实时数据处理工具,可以构建实时分析系统。

 Pandas 安装

pip install pandas

1.查看版本

import pandas as pd
pd.__version__  # 查看版本
1.1.5

Pandas数据结构-series

 Pandas Series 类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型。

Series 特点:

  • 索引: 每个 Series 都有一个索引,它可以是整数、字符串、日期等类型。如果没有显式指定索引,Pandas 会自动创建一个默认的整数索引。

  • 数据类型: Series 可以容纳不同数据类型的元素,包括整数、浮点数、字符串等。

              
pandas.Series( data,     数据   
               index,    数据索引,不指定,从0开始                
               dtype,    数据类型,默认会自己判断
               name,     设置名称。
               copy)     拷贝数据,默认为 False。

实例:

import pandas as pd

a = [1, 2, 3]

myvar = pd.Series(a)

print(myvar)

 Pandas-Series的一些方法

1.索引取值
import pandas as pd

a = [1, 2, 3]

myvar = pd.Series(a)

print(myvar[1])     #2
2.指定索引和按照索引取值
import pandas as pd

a = ["Google", "Runoob", "Wiki"]

myvar = pd.Series(a, index = ["x", "y", "z"])

print(myvar)    
print(myvar[y])    #Runoob


x    Google
y    Runoob
z      Wiki
dtype: object
3.利用字典创建Series      --------key值为索引
import pandas as pd

s={0:"Google",1:"chorm"}
pd.Series(s)
4.字典中的一部分数据,只需要指定需要数据的索引即可
import pandas as pd

sites = {1: "Google", 2: "Runoob", 3: "Wiki"}

myvar = pd.Series(sites, index = [1, 2])

print(myvar)

 基本操作:

import pandas as pd

s = {0: "Google", 1: "chorm", 2: "cjejiccnm", 3: "feofoemkfmm"}
ser = pd.Series(s)


print(ser[2])    #cjejiccnm
print(ser[1:4])

# 1          chorm
# 2      cjejiccnm
# 3    feofoemkfmm
# dtype: object


# 索引和值的对应关系
for index, value in ser.items():
    print(f"Index: {index}, Value: {value}")
# Index: 0, Value: Google
# Index: 1, Value: chorm
# Index: 2, Value: cjejiccnm
# Index: 3, Value: feofoemkfmm
基本运算
import pandas as pd

s = {0: "Google", 1: "chorm", 2: "cjejiccnm", 3: "feofoemkfmm"}
ser = pd.Series(s)


print(ser*2)

# 0              GoogleGoogle
# 1                chormchorm
# 2        cjejiccnmcjejiccnm
# 3    feofoemkfmmfeofoemkfmm
# dtype: object


# 过滤
filtered_series = ser[ser > 2]  # 选择大于2的元素
# 数学函数
import numpy as np
result = np.sqrt(ser)  # 对每个元素取平方根
属性和方法:
# 获取索引
index = series_with_index.index

# 获取值数组
values = series_with_index.values

# 获取描述统计信息
stats = series_with_index.describe()

# 获取最大值和最小值的索引
max_index = series_with_index.idxmax()
min_index = series_with_index.idxmin()

注意事项:

  • Series 中的数据是有序的。
  • 可以将 Series 视为带有索引的一维数组。
  • 索引可以是唯一的,但不是必须的。
  • 数据可以是标量、列表、NumPy 数组等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值