当前位置: 首页 > 面试题库 >

将Pandas数据框转换为PyTorch张量?

公羊宇定
2023-03-14
问题内容

我想使用个人数据库在PyTorch上训练一个简单的神经网络。该数据库是从Excel文件导入的,并存储在中df

其中一列名为"Target",它是网络的目标变量。我如何使用此数据框作为PyTorch神经网络的输入?

我试过了,但是不起作用:

target = pd.DataFrame(data = df['Target'])
train = data_utils.TensorDataset(df, target)
train_loader = data_utils.DataLoader(train, batch_size = 10, shuffle = True)

问题答案:

我指的是标题中的问题,因为您实际上并未在文本中指定其他任何内容,因此只需将DataFrame转换为PyTorch张量即可。

没有关于您的数据的信息,我只是在这里以float值作为示例目标。

将Pandas数据框转换为PyTorch张量?

import pandas as pd
import torch
import random

# creating dummy targets (float values)
targets_data = [random.random() for i in range(10)]

# creating DataFrame from targets_data
targets_df = pd.DataFrame(data=targets_data)
targets_df.columns = ['targets']

# creating tensor from targets_df 
torch_tensor = torch.tensor(targets_df['targets'].values)

# printing out result
print(torch_tensor)

输出:

tensor([ 0.5827,  0.5881,  0.1543,  0.6815,  0.9400,  0.8683,  0.4289,
         0.5940,  0.6438,  0.7514], dtype=torch.float64)

用Pytorch 0.4.0测试。

如果您还有其他问题,我希望这会有所帮助-请问一下。:)



 类似资料: