pandas中dataframe的索引使用和转换为array

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lilong117194/article/details/83796664
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Tue Nov  6 23:44:54 2018

@author: lilong
"""
import pandas as pd
import numpy as np


# 通过行标签索引行数据  index可以为整数
data = [[1,2,3],[4,5,6]]
index = [0,1]
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.loc[0],'\n')
print (df.loc[1])
print('.................')

# 行标签索引  index为字符
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.loc['d'])
print('.................')


# 多行获取
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.loc['d':])
print('.................')



# 索引某行某列
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.loc['d',['b','c']])
print('.................')


# 索引某列
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.loc[:,['c']])
print('.................')


# iloc通过行号索引
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.iloc[1])
print('.................')


# iloc通过行号多行索引
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.iloc[0:])
print('.................')


# iloc索引列
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.iloc[:,[1]])
print('.................')

data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=None, columns=columns)
print (df,'\n')
print (df.iloc[:,[1]],'\n')
tt=df.iloc[:,[1]]
print(tt.values)


'''
# 索引列数据时 如下操作会出错:
# KeyError: 'the label [a] is not in the [index]'
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print (df,'\n')
print (df.loc['a'])
'''



# DataFrame类型转换成Numpy中array类型的三种方法
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=None, columns=columns)
print (df,'\n')
print(df.values,'\n')
print(df.as_matrix(),'\n')
print(np.array(df),'\n')


运行:

 a  b  c
0  1  2  3
1  4  5  6 

a    1
b    2
c    3
Name: 0, dtype: int64 

a    4
b    5
c    6
Name: 1, dtype: int64
.................
   a  b  c
d  1  2  3
e  4  5  6 

a    1
b    2
c    3
Name: d, dtype: int64
.................
   a  b  c
d  1  2  3
e  4  5  6 

   a  b  c
d  1  2  3
e  4  5  6
.................
   a  b  c
d  1  2  3
e  4  5  6 

b    2
c    3
Name: d, dtype: int64
.................
   a  b  c
d  1  2  3
e  4  5  6 

   c
d  3
e  6
.................
   a  b  c
d  1  2  3
e  4  5  6 

a    4
b    5
c    6
Name: e, dtype: int64
.................
   a  b  c
d  1  2  3
e  4  5  6 

   a  b  c
d  1  2  3
e  4  5  6
.................
   a  b  c
d  1  2  3
e  4  5  6 

   b
d  2
e  5
.................
   a  b  c
0  1  2  3
1  4  5  6 

   b
0  2
1  5 

[[2]
 [5]]
   a  b  c
0  1  2  3
1  4  5  6 

[[1 2 3]
 [4 5 6]] 

[[1 2 3]
 [4 5 6]] 

[[1 2 3]
 [4 5 6]] 

猜你喜欢

转载自blog.csdn.net/lilong117194/article/details/83796664