0

我正在尝试构建一个泊松回归模型,在执行以下代码时,它会产生一个 Patsy 错误,因为数据参数和类型之间的行数不匹配(29 对 1):

import pandas as pd
from patsy import dmatrices
import numpy as np
import statsmodels.api as sm
import matplotlib.pyplot as plt

df = pd.read_csv('ships.csv', header=0, infer_datetime_format=True, parse_dates=[0], index_col=[0])

mask = np.random.rand(len(df)) < 0.8
df_train = df[mask]
df_test = df[~mask]
print('Training data set length='+str(len(df_train)))
print('Testing data set length='+str(len(df_test)))

expr = """ damage ~ type + construction + operation + months """

y_train, X_train = dmatrices(expr, df_train, return_type='dataframe')
y_test, X_test = dmatrices(expr, df_test, return_type='dataframe')

输出:

PatsyError:数据参数和类型之间的行数不匹配(29对1)损坏〜类型+构造+操作+月^^^^

有人可以帮我解决这个问题吗?

谢谢

4

1 回答 1

0

谢谢大家,但我已经解决了。问题在于 df = pd.read_csv('ships.csv', header=0),其余的块是不必要的,因为没有日期时间数据。

谢谢

于 2021-04-07T13:05:05.300 回答