import numpy as np
import pandas as pd
from numpy import *
df={800:(1163,1,4),801:(1164,2,5),1192:(1195,3,6)}
matrix = pd.DataFrame(df,index=[1,2,3])
print(matrix)
#得到二维矩阵的行列数
matrix_shape = matrix.shape
m = matrix_shape[0]
n = matrix_shape[1]
print(matrix_shape,m,n)
#创造一个m*n行,3列的零矩阵
returnMat = zeros((m*n,3)) #创造一个m*n行,3列的零矩阵
print(returnMat)
#输出matrix的第三行第二列元素
print(matrix.iloc[2,1])
#打印第一列名称
print(matrix.columns[0])
print(type(matrix.columns[0]))
#赋值
for j in range(n): #遍历列数 #range(n),默认从0开始到n-1
for i in range(m): #遍历行数
#print(i)
returnMat[m*j+i,2] = matrix.iloc[j,i]
returnMat[m*j+i,0] = j+1
returnMat[m*j+i,1] = matrix.columns[i]
##return returnMat
print(returnMat)
print(type(returnMat))
#np.savetxt('d:/result.txt', returnMat)
输出:800 801 1192
1 1163 1164 1195
2 1 2 3
3 4 5 6
(3, 3) 3 3
[[ 0. 0. 0.]
[ 0. 0. 0.]
[ 0. 0. 0.]
...,
[ 0. 0. 0.]
[ 0. 0. 0.]
[ 0. 0. 0.]]
5
800
<class 'numpy.int64'>
[[ 1.00000000e+00 8.00000000e+02 1.16300000e+03]
[ 1.00000000e+00 8.01000000e+02 1.16400000e+03]
[ 1.00000000e+00 1.19200000e+03 1.19500000e+03]
...,
[ 3.00000000e+00 8.00000000e+02 4.00000000e+00]
[ 3.00000000e+00 8.01000000e+02 5.00000000e+00]
[ 3.00000000e+00 1.19200000e+03 6.00000000e+00]]
<class 'numpy.ndarray'>
1万+

被折叠的 条评论
为什么被折叠?



