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

DataFrame索引的创建与基础用法

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

DataFrame索引的创建与基础用法

DataFrame 是一个表格型的数据结构(数据框),它含有一组有序的列,每列可以是不同的数据类型。
DataFrame 既有行索引,也有列索引,可以看作是由多个Series索引组成的字典(共用一个索引),数据是以二维结构存放的。

索引:是指有序列表中的位置。
Python字符串可以看作是字符列表;
每个字符都有一个从零(开始)到长度减一(结束)的索引。
对于字符串“Python”,索引按如下方式分解:
P y t h o n
0 1 2 3 4 5
此外,Python支持负索引,在这种情况下,它从末尾开始计算。最后一个字符的索引为-1,倒数第二个字符的索引为-2,等等:

1. DataFrame索引的创建

字典类:

  • 数组、列表或元组构成的字典构造 DataFrame
  • Series构成的字典构造 DataFrame
  • 字典构成的字典构造 DataFrame

列表类:

  • 2D ndarray 构造 DataFrame
  • Series构成的列表构造 DataFrame
  • 字典构成的列表构造 DataFrame
>>> import numpy as np
>>> import pandas as pd
1.1 字典类构造DataFrame 1.1.1 数组,列表或元组构成的字典构造DataFrame

**注意:**数组,列表或元组的元素个数要相同,否则报错

>>> dict = {'a':[1,2,3,4], 'b':(5,6,7,8), 'c':np.arange(1,5)}
>>> dict
{'a': [1, 2, 3, 4], 'b': (5, 6, 7, 8), 'c': array([1, 2, 3, 4])}
>>> frame = pd.DataFrame(dict)
>>> frame
   a  b  c
0  1  5  1
1  2  6  2
2  3  7  3
3  4  8  4

**np.arange():**函数返回一个有终点和起点的固定步长的排列。
参数个数情况:
np.arange(a, b, c) 函数分为一个参数,两个参数,三个参数三种情况
1)一个参数时,参数值为终点,起点取默认值0,步长取默认值1。
2)两个参数时,第一个参数为起点,第二个参数为终点,步长取默认值1。
3)三个参数时,第一个参数为起点,第二个参数为终点,第三个参数为步长。其中步长支持小数
如:[1,2,3,4,5],起点是1,终点是6,步长为1

指定索引行和列:
注意:指定的列索引数量可以大于原来的,如果值不是原来的会返回NAN。指定的行索引可随意变化。

>>> df = pd.DataFrame(dict, index=['A','B','C','D'], columns=['a','b','c','d'])
>>> df
   a  b  c    d
A  1  5  1  NaN
B  2  6  2  NaN
C  3  7  3  NaN
D  4  8  4  NaN
1.1.2 Series构成的字典构造DataFrame

**注意:**不可指定索引行列名。字典键为列索引,行索引默认为位置索引。

>>> df = pd.DataFrame({'m':pd.Series(np.arange(3)),
                   'n':pd.Series(np.arange(3,5))})
>>> df
	m	n
0	0	3.0
1	1	4.0
2	2	NaN
1.1.3 字典构成的字典构造DataFrame(字典嵌套)

**注意:**不可指定索引行列名,因为内字典键为行索引,外字典将键为列索引

>>> data = {
    'a':{'apple':3.1,'mango':4},
    'b':{'apple':3.4,'mango':5},
    'c':{'apple':3.6}}
# 内字典键为行索引,外字典将键为列索引
>>> df = pd.DataFrame(data)
>>> df
	    a	  b	    c
apple	3.1	  3.4	3.6
mango	4.0	  5.0	NaN
1.2 列表类构造dataframe

…

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

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

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