DataFrame索引的创建与基础用法

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

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

字典类:

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

列表类:

  • 2D ndarray 构造 DataFrame
  • Series构成的列表构造 DataFrame
  • 字典构成的列表构造 DataFrame
>>> import numpy as np
>>> import pandas as pd

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

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

>>> 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

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

>>> 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

Original: https://blog.csdn.net/m0_53999934/article/details/125115432
Author: Hi_Night
Title: DataFrame索引的创建与基础用法

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/697184/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球