我有一个100行1034列的数据集,请帮我写出遍历每一行数据生成格拉姆角场图片并保存到文件夹的代码python
时间: 2024-02-12 10:09:38 浏览: 104
好的,以下是可以实现你要求的Python代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成100行1034列的随机数据,作为数据集
data = np.random.rand(100, 1034)
# 遍历每一行数据,生成格拉姆矩阵并绘制成图片并保存到文件夹
for i in range(data.shape[0]):
# 生成格拉姆矩阵
gram_matrix = np.dot(data[i].reshape(-1, 1), data[i].reshape(1, -1))
# 绘制格拉姆矩阵成图片
plt.imshow(gram_matrix, cmap='gray')
# 设置图片标题
plt.title(f'Gram Matrix of Row {i+1}')
# 保存图片到文件夹中,文件名为 'gram_matrix_i.png'
plt.savefig(f'gram_matrix_{i}.png')
# 关闭当前绘图窗口
plt.close()
```
这段代码中,我们使用了NumPy库生成了100行1034列的随机数据作为数据集。接着,我们使用for循环遍历每一行数据,生成该行数据的格拉姆矩阵,并将其绘制成图片并保存到文件夹中。在保存图片时,我们使用了`f`字符串格式化来生成文件名,方便区分每张图片。最后,我们使用`plt.close()`关闭当前绘图窗口,以便下一次循环时重新绘制新的图片。
阅读全文