Numpy 与 DataFrame对比与应用

(一)对比Numpty 与 DataFrame默认索引取值不同点

Numpy索引取值

#Numpy索引取值
data=np.empty((2,4),dtype=int)
print(data)
'''

[[4128860 6029375 3801157 7340124]
 [7602297 7274600 3342446      54]]
 
'''

#取行
print('取第一行结果')
print(data[0])      #[4128860 6029375 3801157 7340124]  默认data【0】拿到的是数组第一行的值
'''
取第一行结果
[4128860 6029375 3801157 7340124]

'''

#取列
print('取第一列的结果')
print(data[:,[0]])
'''
取第一列的结果
[[4128860]
 [7602297]]
'''

DataFrame索引取值

#Dataframe的索引取值
data=pd.DataFrame(data)
print(data)

'''原始DataFrame数组

         0        1        2        3
0  4128860  6029375  3801157  7340124
1  7602297  7274600  3342446       54

'''

#取行的值
print('取第二行的值')
print(data[1:2])
'''
取第一行的值
         0        1        2        3
0  4128860  6029375  3801157  7340124
'''


#取列的值
print('取第一列的值')
print(data[0])     #这里data【0】拿到的是第一列的值
'''
取第一列的值
0    4128860
1    7602297
Name: 0, dtype: int32

'''

 

(二)Numpy与DataFrame之间转换

Numpy数组:

通过Numpy生成一个随机5行5列数组

import random
data=np.zeros((5,5),dtype=int)

通过random模块改变数组中的每个值

for i in range(len(data)):
    for j in range(len(data[0])):
        data[i][j] = random.randint(0,5)

print(data)

'''Numpy初始的数组结构

[[1 4 4 0 2]
 [3 2 5 5 2]
 [3 4 1 5 5]
 [2 3 1 0 1]
 [4 4 1 1 1]]

'''

查看Numpy数组类型

#看Numpy初始的数组类型
print(type(data))   #<class 'numpy.ndarray'>

将Numpy数组转为DataFrame数组:

data_new=pd.DataFrame(data)
print(data_new)

'''转换为DataFrame之后的结构
   0  1  2  3  4
0  1  4  4  0  2
1  3  2  5  5  2
2  3  4  1  5  5
3  2  3  1  0  1
4  4  4  1  1  1

'''

查看转换后的数组类型

#看装换之后的数据类型
print(type(data_new))  #<class 'pandas.core.frame.DataFrame'>

 

posted @ 2018-12-14 11:38  yangzhizong  阅读(3993)  评论(0编辑  收藏  举报