我想用 Python 计算(加权)逻辑回归。计算权重以调整样本关于总体的分布。然而,如果我使用权重,结果不会改变。
\nimport numpy as np\nimport pandas as pd \nimport statsmodels.api as sm \nRun Code Online (Sandbox Code Playgroud)\n数据看起来像这样。目标变量是VISIT. 这些特征是除WEIGHT_both(这是我想使用的权重)之外的所有其他变量。
df.head() \n\nWEIGHT_both VISIT Q19_1 Q19_2 Q19_3 Q19_4 Q19_5 Q19_6 Q19_7 Q19_8 ... Q19_23 Q19_24 Q19_25 Q19_26 Q19_27 Q19_28 Q19_29 Q19_30 Q19_31 Q19_32\n0 0.022320 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 ... 4.0 4.0 1.0 1.0 1.0 1.0 2.0 3.0 3.0 2.0\n1 0.027502 1.0 3.0 2.0 2.0 2.0 3.0 4.0 3.0 2.0 ... 3.0 2.0 …Run Code Online (Sandbox Code Playgroud) 我尝试了不同的方法来安装lightgbm软件包,但无法完成。我在github 存储库中尝试了所有方法,但它们不起作用。我运行 Windows 10 和 R 3.5(64 位)。还有人用类似的问题。所以我尝试了他的解决方案:
-->
devtools::install_github("Laurae2/lgbdl", force = TRUE)
library(lgbdl)
lgb.dl(commit = "master",
compiler = "vs",
repo = "https://github.com/Microsoft/LightGBM")
*** arch - i386
installing via 'install.libs.R' to C:/Users/X1/Documents/R/win-
library/3.5/lightgbm
Error in eval(ei, envir) : Cannot find lib_lightgbm.dll
* removing 'C:/Users/XXX/Documents/R/win-library/3.5/lightgbm'
In R CMD INSTALL
installation of package
?C:/Users/XXX/AppData/Local/Temp/RtmpczNLaN/LightGBM/R-package? had non-
zero exit status[1] FALSE …Run Code Online (Sandbox Code Playgroud) 我曾经shap确定具有相关特征的多元回归的特征重要性。
import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression
from sklearn.datasets import load_boston
import shap
boston = load_boston()
regr = pd.DataFrame(boston.data)
regr.columns = boston.feature_names
regr['MEDV'] = boston.target
X = regr.drop('MEDV', axis = 1)
Y = regr['MEDV']
fit = LinearRegression().fit(X, Y)
explainer = shap.LinearExplainer(fit, X, feature_dependence = 'independent')
# I used 'independent' because the result is consistent with the ordinary
# shapely values where `correlated' is not
shap_values = explainer.shap_values(X)
shap.summary_plot(shap_values, X, plot_type = 'bar') …Run Code Online (Sandbox Code Playgroud) 我有这个数据:
merged_dat1
# A tibble: 4 x 35
# Groups: Product.Name [4]
Product.Name also apps battery better big camera case cheap day definitely enough even however
<chr> <int> <int> <int> <int> <int> <int> <int> <int> <int> <int> <int> <int> <int>
1 BLU Studio ~ 498 545 1552 465 306 839 406 161 413 225 156 590 178
2 iphone 4s 71 37 380 43 19 13 21 38 43 25 16 128 52
3 Motorola Mo~ 160 221 253 123 …Run Code Online (Sandbox Code Playgroud) 我有一些像下面这样的变量:
colnames(samp)
[1] "Q11_1_1" "Q11_1_2" "Q11_1_3" "Q11_1_4" "Q11_1_5" "Q11_1_6" "Q11_1_7" "Q11_1_8" "Q11_1_9" "Q11_1_10"
[11] "Q11_1_11" "Q11_1_12" "Q11_1_99" "Q11_2_1" "Q11_2_2" "Q11_2_3" "Q11_2_4" "Q11_2_5" "Q11_2_6" "Q11_2_7"
[21] "Q11_2_8" "Q11_2_9" "Q11_2_10" "Q11_2_11" "Q11_2_12" "Q11_2_99"
Run Code Online (Sandbox Code Playgroud)
我想在中间和结尾交换值,例如
Q11_1_1-> Q11_1_1
Q11_1_2-> Q11_2_1
...
Q11_1_99-> Q11_99_2
我可以这样做(但是这很耗时)。
samp %>%
rename(Q11_1_2 = Q11_2_1)
Run Code Online (Sandbox Code Playgroud)
任何想法如何做到这一点?