python 读文件,然后转化为矩阵的实例
代码流程:
1. 从文件中读入数据。
2. 将数据转化成矩阵的形式。
3. 对于矩阵进行处理。
具体的python代码如下:
- 文件路径需要设置正确。
- 字符串处理。
- 字符串数组到 整型数组的转化。( nums = [int(x) for x in nums ])
- 矩阵的构造。(matrix = np.array(nums))
- numpy模块在矩阵处理上很有优势。
列表内容
# -*- coding: utf-8 -*-
import numpy as np
def readFile(path):
# 打开文件(注意路径)
f = open(path)
# 逐行进行处理
first_ele = True
for data in f.readlines():
## 去掉每行的换行符,"\n"
data = data.strip('\n')
## 按照 空格进行分割。
nums = data.split(" ")
## 添加到 matrix 中。
if first_ele:
### 将字符串转化为整型数据
nums = [int(x) for x in nums ]
### 加入到 matrix 中 。
matrix = np.array(nums)
first_ele = False
else:
nums = [int(x) for x in nums]
matrix = np.c_[matrix,nums]
dealMatrix(matrix)
f.close()
def dealMatrix(matrix):
## 一些基本的处理。
print "transpose the matrix"
matrix = matrix.transpose()
print matrix
print "matrix trace "
print np.trace(matrix)
# test.
if __name__ == '__main__':
readFile("matrix")其中matrix文件中的内容如下:
0 0 0 1 1 0 1 0 1 0 1 1 1 1 1 1 1 2 3 4
python 构造m* n的矩阵
- 通过列表的方式(数组)进行生成矩阵。
- 该矩阵不适用于稀疏矩阵。(稀疏矩阵不会这样子进行构造)
- 注意:如果数据量特别大的时候,这种方法相当于将矩阵中的东西全部加载到内存中,如果行列达到10000+,最好考虑使用稀疏矩阵。(易出现 MemoryError)
- 稀疏矩阵的运算也应该考虑。
相关代码:
def fixed_matrix(row,col): return [[0 for i in range(col)] for j in range(row)]
相关推荐
guangmingsky 2020-06-05
sasac 2020-09-25
huangjie0 2020-09-25
cloudking000 2020-09-11
xiaoxiaokeke 2020-07-28
mingyunxiaohai 2020-07-28
honghao0 2020-07-27
风吹夏天 2020-07-26
夕加加 2020-07-20
CallmeZhe 2020-06-29
zhoujiyu 2020-06-28
清风徐来水波不兴 2020-06-16
Happyunlimited 2020-06-15
wanff0 2020-06-14
cuiguanjun 2020-06-13
啸林 2020-06-12
jiayuqicz 2020-06-09
章鱼之家 2020-06-08