Pandas之Series和Dataframe

Posted 654321cc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pandas之Series和Dataframe相关的知识,希望对你有一定的参考价值。

# Series 数据结构
# Series 是带有标签的一维数组,可以保存任何数据类型(整数,字符串,浮点数,Python对象等),轴标签统称为索引

import numpy as np
import pandas as pd  
# 导入numpy、pandas模块

s = pd.Series(np.random.rand(5))
print(s)
print(type(s))
# 查看数据、数据类型

print(s.index,type(s.index))
print(s.values,type(s.values))
# .index查看series索引,类型为rangeindex
# .values查看series值,类型是ndarray

# 核心:series相比于ndarray,是一个自带索引index的数组 → 一维数组 + 对应索引
# 所以当只看series的值的时候,就是一个ndarray
# series和ndarray较相似,索引切片功能差别不大
# series和dict相比,series更像一个有顺序的字典(dict本身不存在顺序),其索引原理与字典相似(一个用key,一个用index)

  输出:

0    0.229773
1    0.357622
2    0.546116
3    0.734517
4    0.686645
dtype: float64
<class pandas.core.series.Series>
RangeIndex(start=0, stop=5, step=1) <class pandas.indexes.range.RangeIndex>
[ 0.22977307  0.35762236  0.54611623  0.73451707  0.68664496] <class numpy.ndarray>

 

# Series 创建方法一:由字典创建,字典的key就是index,values就是values

dic = {a:1 ,b:2 , c:3, 4:4, 5:5}
s = pd.Series(dic)
print(s)
# 注意:key肯定是字符串,假如values类型不止一个会怎么样? → dic = {a:1 ,b:hello , c:3, 4:4, 5:5}

  输出:

4    4
5    5
a    1
b    2
c    3
dtype: int64

 

# Series 创建方法二:由数组创建(一维数组)

arr = np.random.randn(5)
s = pd.Series(arr)
print(arr)
print(s)
# 默认index是从0开始,步长为1的数字

s = pd.Series(arr, index = [a,b,c,d,e],dtype = np.object)
print(s)
# index参数:设置index,长度保持一致
# dtype参数:设置数值类型

  输出:

[ 0.11206121  0.1324684   0.59930544  0.34707543 -0.15652941]
0    0.112061
1    0.132468
2    0.599305
3    0.347075
4   -0.156529
dtype: float64
a    0.112061
b    0.132468
c    0.599305
d    0.347075
e   -0.156529
dtype: object

 

# Series 创建方法三:由标量创建

s = pd.Series(10, index = range(4))
print(s)
# 如果data是标量值,则必须提供索引。该值会重复,来匹配索引的长度

  输出:

0    10
1    10
2    10
3    10
dtype: int64

 

以上是关于Pandas之Series和Dataframe的主要内容,如果未能解决你的问题,请参考以下文章

数据分析之pandas

python之pandas入门操作

Pandas的介绍及 Series DataFrame的创建

Python其实很简单 第十九章 Pandas之Series与DataFrame

Pandas之:深入理解Pandas的数据结构

Pandas的DataFrame & Series详解