Python加入Lis

2024-09-21 03:23:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我最近阅读了关于python中VIF函数实现的文章。你知道吗

Link to the article

我无法理解在这条特定的生产线上正在进行的操作。你知道吗

features = "+".join(df.columns - ["annual_inc"])

我知道当语句

features = "+".join(df.columns)

有人能解释一下这句话中- ["annual_inc"]的意义吗?你知道吗


Tags: columnstheto函数dfarticle文章link
3条回答

我认为有旧的熊猫代码,现在提出错误:

df = pd.DataFrame(columns=['a','b','annual_inc'])

print (df.columns - ["annual_inc"])

TypeError: unsupported operand type(s) for -: 'str' and 'str'

因此,使用^{}从列名中排除列表的值:

print(df.columns.difference(["annual_inc"]))
Index(['a', 'b'], dtype='object')

features = "+".join(df.columns.difference(["annual_inc"]))
print(features)
a+b

"annual_inc"是回归的目标变量,因此被排除在特征集之外。你知道吗

对于patsy.dmatrices,函数的第一个arument是formula_like,它必须是类似y ~ x1 + x2的字符串。这里在features中,您正在创建一个字符串,其中包含除目标变量annual_inc之外的所有列(中间有一个+)。接下来您必须将输入字符串creaate到formula_like,即target ~ variable1 + variable2 + ...,在您的例子中是'annual_inc ~' + features。你知道吗

dmatrices('annual_inc ~' + features, df, return_type='dataframe')

参考patsy.dmatrices

相关问题 更多 >

    热门问题