首页 > 解决方案 > 如何修复此错误:python 代码中的 ValueError 以及来自 tensorflow (GPflow) 的示例

问题描述

我在这里关注这个笔记本(来自 GPflow 教程):

我是 python、colab 和 tensorflow 的新手。

代码:

!pip install gpflow
# Importar Librerias
import gpflow
import numpy as np
import matplotlib
import tensorflow as tf
from mpl_toolkits.mplot3d import Axes3D
from tensorflow_probability import distributions as tfd
from tensorflow_probability import positive_semidefinite_kernels as tfk
import pandas as pd
%matplotlib inline
matplotlib.rcParams['figure.figsize'] = (12, 6)
plt = matplotlib.pyplot
#data = np.genfromtxt('data/regression_1D.csv', delimiter=',')
# X = data[:, 0].reshape(-1, 1)
# Y = data[:, 1].reshape(-1, 1)
# plt.plot(X, Y, 'kx', mew=2)
from google.colab import files
uploaded = files.upload()
print (uploaded['datos1D.csv'][:200].decode('utf-8') + '...')
import io
df = pd.read_csv(io.StringIO(uploaded['datos1D.csv'].decode('utf-8')))
print(df)

输出:

IF1,CS 506.00,44.00 442.00,27.00 428.00,40.00 460.00,34.00 441.00,48.00 465.00,59.00 461.00,56.00 479.00,46.00 418.00,51.00 434.00,37.00 409.00,48.00 424.00,34.00 452.00,4.00 459.00,37.0...

# pandas.core.frame.DataFrame
data=df
type(data)
df.head()
df.shape
IF1= df.IF1
X=IF1[0:14]
CS = df.CS
Y=CS[0:14]
plt.plot(X, Y, 'kx', mew=2)
df.describe()
k = gpflow.kernels.Matern52(input_dim=1)
k.as_pandas_table()
m = gpflow.models.GPR(X, Y, kern=k, mean_function=None)

我尝试将 pandas 数据集转换为 tensorflow 数据集:

#convert the pandas object to a tensor
X=tf.convert_to_tensor(X)
#convert the pandas object to a tensor
Y=tf.convert_to_tensor(Y)
type(X)
type(Y)
#convert the pandas object to a tensor
data=tf.convert_to_tensor(data)
type(data)
m = gpflow.models.GPR(X, Y, kern=k, mean_function=None)

另一个错误:

IndexError:元组索引超出范围

我无法理解发生了什么,有人帮助我吗?

标签: pythontensorflowgoogle-colaboratoryvalueerror

解决方案


推荐阅读