此图描述了在进行深度学习时常用的几个库之间不同类型的转化。
导入数据一般的路径 : pandas->numpy->torch
画loss的路径 :torch ->numpy ->matplotlib
Pandas DataFrame 和 NumPy 数组之间的转换
import pandas as pd
import numpy as np
# 创建一个示例 DataFrame
df = pd.DataFrame({
'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]
})
# 转换为 NumPy 数组
numpy_array = df.to_numpy()
# 或者使用
numpy_array = df.values
print(numpy_array)
# 创建一个示例 NumPy 数组
numpy_array = np.array([[1, 2, 3], [4, 5, 6]])
# 转换为 DataFrame
df = pd.DataFrame(numpy_array, columns=['A', 'B', 'C'])
print(df)
NumPy 数组和 PyTorch 张量之间的转换
import numpy as np
import torch
# 创建一个示例 NumPy 数组
numpy_array = np.array([[1, 2, 3], [4, 5, 6]])
# 转换为 PyTorch 张量
torch_tensor = torch.from_numpy(numpy_array)
print(torch_tensor)
# 创建一个示例 PyTorch 张量
torch_tensor = torch.tensor([[1, 2, 3], [4, 5, 6]])
# 转换为 NumPy 数组
numpy_array = torch_tensor.numpy()
print(numpy_array)
读写 CSV 文件
pandas
import pandas as pd
# 读取 CSV 文件
df = pd.read_csv('path_to_file.csv',sep=";") #sep指定分隔符
# 显示前几行数据
print(df.head())
# 保存 DataFrame 到 CSV 文件
df.to_csv('path_to_output_file.csv', index=False)
df.to_csv('example_output.csv', sep=',', index=False, na_rep='NA', \
float_format='%.2f')
sep: 分隔符,默认是逗号(,)
index: 是否保存行索引,默认是 True
columns: 要保存的列
header: 是否写入列名,默认是 True
na_rep: 缺失值的表示,默认是空字符串
float_format: 浮点数格式
numpy
# 创建一个示例数组
array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 保存数组到 .txt 文件
np.savetxt('array.txt', array)
# 保存数组到 .csv 文件,指定分隔符
np.savetxt('array.csv', array, delimiter=',')
# 读取 .txt 文件中的数组
loaded_array_txt = np.loadtxt('array.txt')
print(loaded_array_txt)
# 读取 .csv 文件中的数组,指定分隔符
loaded_array_csv = np.loadtxt('array.csv', delimiter=',')
print(loaded_array_csv)