- 数据结构
- Pandas[‘pændəz]中的数据结构
- 按列访问
df[‘age’] - 按行访问
df[1:2]
#按索引查询行
df.loc[[‘first’, ‘second’]]
#查询行列
df.iloc[0:1, 0:1]
#按索引,列名访问
df.at[‘first’, ‘name’]
#查询修改列名,查询修改索引
df.columns
df.columns = [‘age2’, ‘name2’]
df.index
df.index = range(1,4)
#根据索引,删除行,删除列
df.drop(‘age2’, axis=1) # 删除列
df.drop(1, axis=0) # 删除行
#新增行,注意这种方法效率非常低,不应该用于遍历中
df.loc[len(df)] = [24, ‘KENKEN1’] #有问题,此方法不能新增,他改变了最后一行
df.loc[len(df) + 1] = [24, ‘KENKEN1’] #这种方式新增了一行
#新增列
df[‘newColumns’] = [1,2,3] #还可以设置列
数据结构
数据结构是指互相之间存在一种或多种特定关系的数据类型的集合。
数据结构,概念,定义,限制,访问,修改
Pandas[‘pændəz]中的数据结构
Series[ˈsɪəri:z] 系列
用于存储一行或者一列的数据,以及与之相关索引的集合,可以理解为Excel中的一列,可以指定索引列,0,1,2
from pandas import Series
x = Series( [‘a’, True, 1] )
x = Series( [‘a’, True, 1],index=[‘first’, ‘second’, ‘third’])
x[1]
x[‘second’]
#下面这个写法会报错
#x.append(‘2’)
#注意:下面那个才是正确写法,如果不写index的话,会默认给0下标的索引,这样0下标输出的就不是’a’而是’2’了。
n = Series([‘2’],index=[‘d’]) #序列的追加
y = x.append(n) #序列的追加,注意他返回一个新的结果,不会改变原有结果
#判断某个值是否在序列中,会返回False,因为判断值是否存在需要使用values属性来判断
‘2’ in x #返回False
‘2’ in x.values #返回False
‘2’ in y.values #返回True
#切片
c = y[1:3] # c=[y[1], y[2]]
#定位获取,这个方法经常用于随机抽样
a = y[[0, 2, 1]] # a = [y[0], y[2], y[1]]
x.drop(0) #根据下标删除
x.drop(‘first’)
x.drop(x.index[2])
y[‘2’!=y.values] #根据值删除
DataFrame [ˈdeɪtə][freɪm]数据框
数据框是用来存储多行多列的数据集合
index, age, Name 列名
0 21 KEN
1 21 John
2 23 JIMI[3,2]这个的位置,读作三行两列
索引 第一列 第二列
索引0开始,
from pandas import DataFrame
df = DataFrame({
‘age’: [21, 22, 23],
‘name’: [‘KEN’, ‘John’, ‘JIMI’]
})
df = DataFrame(
data={
‘age’: [21, 22, 23],
‘name’: [‘KEN’, ‘John’, ‘JIMI’]
},<br /> index=['first', 'second', 'third']<br />)
按列访问
df[‘age’]
df[[‘age’, ‘name’]]