-
列索引:
-
list(df.index)
完整实验:
df = pd.DataFrame(data = np.random.randint(0,100, size = (4,4)), columns = ['A', 'B', 'C', 'D'])
文章目录行索引:list(df.index)列索引:list(df.index)完整实验:df = pd.DataFrame(data = np.random.randint(0,100, size = (4,4)), columns = ['A', 'B', 'C', 'D'])df
最近在网上搜了许多关于pandas.DataFrame的操作说明,都是一些基础的操作,但是这些操作组合起来还是比较费时间去正确操作DataFrame,花了我挺长时间去调整BUG的。我在这里做一些总结,方便你我他。感兴趣的朋友们一起来看看吧。
一、创建DataFrame的简单操作:
1、根据字典创造:
In [1]: import pandas as pd
In [3]: aa={'one':[1,2,3],'two':[2,3,4],'three':[3,4,5]}
In [4]: bb=pd.DataFrame(aa)
In [5]: bb
Out[5]:
one three tw
df[]的参数只能传入一个维度,要么是
行索引,要么是
列索引,不能同时传入
行索引和
列索引。
df[]生成的结果有的是series,有的是
dataframe。
df[]传入一个
值或一个
列表时,传入的是
列索引。传入
行索引时,只能传入切片。
.loc和.iloc的参数可以有
值、
列表、切片三种方式。传入
值时,结果是series,传入
列表和切片时,结果是
dataframe。
.loc和.iloc的参数通过逗号分为两部分,前面是
行索引或下标,后面是
列索引或下标,
列索引可以省略,但
行索引不能省略。
1.生成数据
生成1-25的数据,并转为5×5的数组,调用
DataFrame转为
dataframe。
arr=np.arange(1,26,1).reshape((5,5))
df=pd.
DataFrame(arr)
print(df)
0 1 2 3 4
0 1 2 3 4 5
1 6 7 8 9 10
2 11 12 13 14 15
3 16 17 18 19 20
4 21 22 23 24 25
loc是基于
行索引,或者说是
行的名称进
行索引的
iloc是根据
行的序
列数
索引的,序
列数从0开始取,iloc前面的i就好像是在提醒你,他的输入参数是常数。
ix是前两者的混合,输入任何一种都可以。
pandas.DataFrame 索引df.loc / df:选择行与列df:选择列df.loc:选择行df.iloc:按整数位置选择行布尔型索引多重索引
df.loc / df:选择行与列
df:选择列
默认一般用于选择列,但也可以选择行
import numpy
import pandas
df = pandas.DataFrame(numpy.random.rand(12).reshape(3,4),
index = ["one","two","three"],columns = list("abcd"))
print(df)
# 按照列名选择列,只选择一列则输出Series,选择多列
在上面的例子中,我们先创建了一个
dataframe,然后将
列'B'设置为
行索引。`set_index`方法会返回一个新的
dataframe,原来的
dataframe并没有改变。如果想要在原来的
dataframe上直接修改,可以使用`inplace=True`参数:
```python
df.set_index('B', inplace=True)
print(df)