python 读文件,然后转化为矩阵的实例
代码流程:
1.从文件中读入数据。
2.将数据转化成矩阵的形式。
3.对于矩阵进行处理。
具体的python代码如下:
-文件路径需要设置正确。
-字符串处理。
-字符串数组到整型数组的转化。(nums=[int(x)forxinnums])
-矩阵的构造。(matrix=np.array(nums))
-numpy模块在矩阵处理上很有优势。
列表内容
#-*-coding:utf-8-*-
importnumpyasnp
defreadFile(path):
#打开文件(注意路径)
f=open(path)
#逐行进行处理
first_ele=True
fordatainf.readlines():
##去掉每行的换行符,"\n"
data=data.strip('\n')
##按照空格进行分割。
nums=data.split("")
##添加到matrix中。
iffirst_ele:
###将字符串转化为整型数据
nums=[int(x)forxinnums]
###加入到matrix中。
matrix=np.array(nums)
first_ele=False
else:
nums=[int(x)forxinnums]
matrix=np.c_[matrix,nums]
dealMatrix(matrix)
f.close()
defdealMatrix(matrix):
##一些基本的处理。
print"transposethematrix"
matrix=matrix.transpose()
printmatrix
print"matrixtrace"
printnp.trace(matrix)
#test.
if__name__=='__main__':
readFile("matrix")
其中matrix文件中的内容如下:
0001 1010 1011 1111 1 2 3 4
python构造m*n的矩阵
-通过列表的方式(数组)进行生成矩阵。
-该矩阵不适用于稀疏矩阵。(稀疏矩阵不会这样子进行构造)
-注意:如果数据量特别大的时候,这种方法相当于将矩阵中的东西全部加载到内存中,如果行列达到10000+,最好考虑使用稀疏矩阵。(易出现MemoryError)
-稀疏矩阵的运算也应该考虑。
相关代码:
deffixed_matrix(row,col): return[[0foriinrange(col)]forjinrange(row)]
以上这篇python读文件,然后转化为矩阵的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。