栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

机器学习四剑客3——Pandas

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

机器学习四剑客3——Pandas

  • pandas是python第三方库,提供高性能易用数据类型和分析工具
  • pandas基于numpy实现,常与numpy和matplotlib一同使用
  • pandas中有两大核心数据结构:Series(一维数据) 和 Dataframe(多特征数据)

>> 01 Series(一维数据)

  • Series是一种类似于一维数组的对象,它由一维数组(各种numpy数据类型)以及一组与之相关的数据标签(即索引)组成;
  • Seriesd的数据结构为“键值对”的形式,“键”可以重复;
  • Series的创建:①使用Python数组创建  ②使用numpy数组创建  ③使用python字典创建
import pandas as pd
import numpy as np
pds1 = pd.Series([99, 98], index=['xiaoming', 'xiaohong'])
print(pds1)          # 使用Python数组创建

pds2 = pd.Series(np.arange(3,6))
print(pds2)          # 使用numpy数组创建

pds3 = pd.Series({'name': 'xiaoming', 'age': 21, 'score': 99})
print(pds3)          # 使用python字典创建

# 注意:与字典不同的是:Series允许索引重复
  • Series的字符串表现形式为:索引在左边,值在右边
import pandas as pd
pds = pd.Series([1, 2, 3, 4])
print(pds)
  • 如果没有为数据指定索引,则自动创建一个0到N-1(N为数据的长度)的整数型索引
  • 可以通过Series的values和index属性获取其数组表示形式和索引对象
import pandas as pd
pds = pd.Series([1, 2, 3, 4])
print('values',pds.values)
print('index',pds.index)
  • 与普通numpy数组相比,可以通过索引的方式选取Series中的单个或一组值
import pandas as pd
pds = pd.Series([1, 2, 3, 4])
print(pds[0])           # 读取第一个值
pds[1] = 10             # 更改第二个值
print(pds[[1,2]])
  • Series中最重要的一个功能是:在算术运算中自动对齐不同索引的数据
import pandas as pd
stu1 = pd.Series({'math': 100, 'physics': 98, 'chemistry': 90})
stu2 = pd.Series({'math': 95, 'physics': 96, 'chemistry': 94})
print(stu1 + stu2)

>> 02 Dataframe(多特征数据)

  • Dataframe是一个表格型的数据结构,含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)
  • Dataframe既有行索引也有列索引,它可以被看做由Series组成的字典(共用同一个索引)
  • 跟其他类似的数据结构相比,Dataframe中面向行和面向列的操作基本上是平衡的
  • Dataframe中的数据是以一个或多个二维块存放的(而不是列表、字典或别的一维数据结构)
import pandas as pd

data = {'name': ['A1', 'A2', 'A3'], 'score': [100, 99, 98]}
fr = pd.Dataframe(data)
print(fr)

# 可按照指定的列顺序创建
fr = pd.Dataframe(data, columns=['score', 'name'])  
print(fr)
  • 可以给Dataframe创建或修改列的值
import pandas as pd

data = {'name': ['A1', 'A2', 'A3'], 'score': [100, 99, 98]}
fr = pd.Dataframe(data)
# 新增某列的值
fr['age'] = [21,22,20]
print(fr)

# 修改某一个值
fr.loc[1, 'age'] = 30
print(fr)

  • values属性会以二维ndarray的形式返回Dataframe中的数据
import pandas as pd

data = {'name': ['A1', 'A2', 'A3'], 'score': [100, 99, 98]}
fr = pd.Dataframe(data)
print(fr.values)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/339795.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号