我正在运行很多回归,我只对一个特定变量的系数和p值的影响感兴趣.因此,在我的脚本中,我希望能够从glm摘要中提取p值(获得系数本身很容易).我知道查看p值的唯一方法是使用summary(myReg).还有其他方法吗?
例如:
fit <- glm(y ~ x1 + x2, myData)
x1Coeff <- fit$coefficients[2] # only returns coefficient, of course
x1pValue <- ???
Run Code Online (Sandbox Code Playgroud)
我曾尝试将其fit$coefficients
作为矩阵处理,但我仍然无法简单地提取p值.
是否有可能做到这一点?
谢谢!
我有两个图(使用基本图形创建)和2个数据框,我想将它们组合到PDF中的一个工作表上.我正在使用grid.table从我的数据框创建一个tableGrobs.我在格式化PDF输出时遇到了很多困难.特别是,我没有成功将所有对象保存在同一页面上.我希望右侧面板包含一个图形,左侧面板包含另一个图形,下面有2个表格(横向格式).
目前我的代码如下:
library('gridExtra')
pdf("Rplots.pdf", paper = "USr", height = 8.5, width = 11)
layout(matrix(c(1,3, 2,3, 4,3), nrow = 3, ncol = 2, byrow = TRUE))
plot(myPlot1)
grid.table(df1)
plot(myPlot2)
grid.table(df2)
dev.off()
Run Code Online (Sandbox Code Playgroud)
我不希望使用GGPLOT2.
我有两个数据帧.例如
require('xlsx')
csvData <- read.csv("myData.csv")
xlsData <- read.xlsx("myData.xlsx")
Run Code Online (Sandbox Code Playgroud)
csvData看起来像这样:
Period CPI VIX
1 0.029 31.740
2 0.039 32.840
3 0.028 34.720
4 0.011 43.740
5 -0.003 35.310
6 0.013 26.090
7 0.032 28.420
8 0.022 45.080
Run Code Online (Sandbox Code Playgroud)
xlsData看起来像这样:
Period CPI DJIA
1 0.029 12176
2 0.039 10646
3 0.028 11407
4 0.011 9563
5 -0.003 10708
6 0.013 10776
7 0.032 9384
8 0.022 7774
Run Code Online (Sandbox Code Playgroud)
当我合并这些数据时,CPI数据被复制,并且后缀被放在标题上,这是有问题的(我的真实df中有更多的列).
mergedData <- merge(xlsData, csvData, by = "Period")
Run Code Online (Sandbox Code Playgroud)
mergedData:
Period CPI.x VIX CPI.y DJIA
1 0.029 …
Run Code Online (Sandbox Code Playgroud) 我正在尝试在新选项卡中打开一个链接,然后在 Firefox 浏览器中使用 Java 中的 selenium 切换到该选项卡。据我了解,为了做到这一点,我需要使用发送组合键。
为了在同一个窗口中打开链接,我一直在使用这样的东西:
WebElement we = driver.findElement(By.xpath("//*[@id='btn']"));
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].click();", we);
Run Code Online (Sandbox Code Playgroud)
以上对我来说工作正常。
现在我还尝试发送密钥,如下所示,但它不起作用:
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("keyDown(Keys.CONTROL)
.keyDown(Keys.SHIFT)
.click(arguments[0])
.keyUp(Keys.CONTROL)
.keyUp(Keys.SHIFT);", we);
Run Code Online (Sandbox Code Playgroud)
有什么建议吗?我无法弄清楚将 sendKeys 发送到 JavascriptExecutor 的正确语法。我已经看到一些使用 Actions 的类似解决方案,但这对我也不起作用。
使用 Docker 和 Compose,我试图将 Gitlab 与作为另一个服务运行的外部注册表配对。我正在使用 Traefik 这样做。为了配对 Gitlab 和 Registry 服务,我需要 Gitlab 在 处创建一个密钥/var/opt/gitlab/gitlab-rails/etc/gitlab-registry.key
,但是我可以在启动期间在日志中看到它没有发生......我怀疑我没有设置我需要的所有环境变量? ?
docker-compose.yml
version: "3.7"
services:
traefik:
container_name: traefik
image: "traefik:v2.2.0"
hostname: "traefik.${WEBSITE}"
restart: always
ports:
- "443:443"
- "5000:5000"
command: --configFile=/config/traefik.toml
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "./traefik:/config:ro"
- "/certs/letsencrypt/acme.json:/letsencrypt/acme.json"
gitlab:
container_name: gitlab
image: gitlab/gitlab-ce:latest
hostname: "git.${WEBSITE}"
restart: always
depends_on:
- traefik
labels:
- "traefik.enable=true"
- "traefik.http.routers.git.tls=true"
- "traefik.http.routers.git.tls.certresolver=letsencrypt"
- "traefik.http.routers.git.entrypoints=web"
- "traefik.http.routers.git.rule=host(`git.${WEBSITE}`)"
- "traefik.http.routers.git.service=git"
- "traefik.http.services.git.loadbalancer.server.port=80"
ports:
- "22:22"
environment:
gitlab_omnibus_config: |
gitlab_rails['gitlab_shell_ssh_port'] = …
Run Code Online (Sandbox Code Playgroud) 使用bayesglm时,我在预测功能方面遇到了一些问题.我读过一些帖子,说当样本数据的数量超过样本数据时,可能会出现这个问题,但是我使用相同的数据来拟合和预测函数.预测与常规glm一起工作正常,但不适用于bayesglm.例:
control <- y ~ x1 + x2
# this works fine:
glmObject <- glm(control, myData, family = binomial())
predicted1 <- predict.glm(glmObject , myData, type = "response")
# this gives an error:
bayesglmObject <- bayesglm(control, myData, family = binomial())
predicted2 <- predict.bayesglm(bayesglmObject , myData, type = "response")
Error in X[, piv, drop = FALSE] : subscript out of bounds
# Edit... I just discovered this works.
# Should I be concerned about using these results?
# Not sure why is …
Run Code Online (Sandbox Code Playgroud) 我想针对同一个回归程序运行10次回归,然后在不使用循环的情况下提取所有标准错误.
depVars <- as.matrix(data[,1:10]) # multiple dependent variables
regressor <- as.matrix([,11]) # independent variable
allModels <- lm(depVars ~ regressor) # multiple, single variable regressions
summary(allModels)[1] # Can "view" the standard error for 1st regression, but can't extract...
Run Code Online (Sandbox Code Playgroud)
allModels
存储为"mlm"对象,这非常难以使用.如果我可以存储一个lm
对象列表或一个感兴趣的统计数据矩阵,那就太棒了.
同样,目标是不使用循环.这是一个等效的循环:
regressor <- as.matrix([,11]) # independent variable
for(i in 1:10) {
tempObject <- lm(data[,i] ~ regressor) # single regressions
table1Data[i,1] <- summary(tempObject)$coefficients[2,2] # assign std error
rm(tempObject)
}
Run Code Online (Sandbox Code Playgroud) 疯狂尝试创建一些包含xts对象的列表/数据框架.
我正在尝试循环遍历字符串向量(每个经济"代码"),并使用quantmod包中的getSymbols函数为每个字符串创建一个xts对象(每个"ticker"的长度不同).然后我想让每个xts对象成为数据框中的一个数据点.我还计划在数据框中有一些相关的数据(比如,每个xts对象的最大日期,以及我在别处指定的"标题"等),但我可以自己处理.
试图创建一个xts对象列表让我疯狂.当我尝试这样的事情时,我总是得到一个字符串列表:
test <- list()
for (i in 1:length(fredTickers))
{# import Data from FRED database
# this creates a list of strings, I'm hoping for list of xts objects...
test[i] <- getSymbols(fredTickers[i],src="FRED")
# xts objects are created for each, but not assigned to the list
}
# this creates an xts object named EVANQ.
# The test2 object is just a string with value "EVANQ".
test2 <- getSymbols("EVANQ",src="FRED")
Run Code Online (Sandbox Code Playgroud)
处理这些xts对象让我疯狂.我尝试了很多技巧.
谢谢您的帮助.
我无法编译这个相当简单的代码。我得到错误,could not deduce template argument for 'std::basic_string<_Elem,_Traits,_Alloc> &&' from 'int'
。我是否需要通过一些自定义求和函数来累积?或者也许有更简单的方法来获得地图中所有第二个值的总和?谢谢!
#include <iostream>
#include <math.h>
#include <map>
#include <numeric>
int main()
{
map<int, int> m;
m[1] = 1;
m[2] = -1;
m[3] = 1;
m[4] = 2;
int sum = accumulate(m.begin(), m.end(), 0);
cout << sum;
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我在几个不同的数据集(相同的依赖变量和独立变量)上执行相同的回归.但是,有很多自变量,我经常想测试添加/删除不同的变量.我想避免对不同的代码行进行所有这些更改,只是因为它们使用不同的数据集.我可以只复制用于创建某个对象的公式,然后使用不同的数据集创建一个新对象吗?例如,类似于:
fit1 <- lm(y ~ x1 + x2 + x3 + ..., data = dataset1)
fit2 <- lm(fit1$call, data = dataset2) # this doesn't work
fit3 <- lm(fit1$call, data = dataset3) # this doesn't work
Run Code Online (Sandbox Code Playgroud)
这样,如果我想更新大量的回归,我只需更新第一个,然后重新运行它们.
可以这样做吗?优选不使用环或糊剂().
谢谢!
我很确定这是重复的,但经过几个小时的搜索/尝试后,我一直无法找到解决方法.
我不是高级程序员,但我有相当数量的C++经验.我正在尝试学习C#并且在使用非常基本的语法方面遇到麻烦,特别是对于访问其他类.我一直在寻找简单的例子,而且绝大多数情况下,我发现的所有东西似乎都使用了一个巨大的类,其中使用了main方法,因此这些例子并没有太大帮助.
我想开发一个包含多个.cs文件(每个文件中有一个类)的解决方案,以及另一个包含我将用于测试的主要方法的.cs文件.我的解决方案名为DIVAT.我有一个Dealer.cs文件,其中包含以下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DIVAT
{
public class Dealer
{
public List<Tuple<int, string>> deck;
Dealer()
{ // default constructor
Console.Out.WriteLine("Default constructor called. (Dealer class)");
string [] suitValue = {"c", "d", "h", "s"};
for(int i = 2; i <= 14; i++){
for(int j = 0; j <= 3; j++){
deck.Add(new Tuple<int, string>(i, suitValue[j]));
}
}
}
~Dealer()
{// destructor
Console.Out.WriteLine("Destrcutor called. (Dealer class)");
}
Tuple<int, string> Dealer.getCard(int cardNum)
{// getter
return deck[cardNum];
} …
Run Code Online (Sandbox Code Playgroud) 我在R中有一个三维物体,它包含n个方形矩阵.例如:
myObject[,,1] # returns a square matrix
myObject[,,2] # returns a square matrix of the same size
...
Run Code Online (Sandbox Code Playgroud)
对象内的所有矩阵都具有相同的大小.我想把所有矩阵加在一起,没有循环.如果我知道对象中有多少个矩阵,这很简单.例如:
matrixSum <- myObject[,,1] + myObject[,,2] + myObject[,,3]
Run Code Online (Sandbox Code Playgroud)
问题是,我需要对几千个这样的对象执行此操作,并且每个对象中都有可变数量的矩阵.有没有办法可以在没有循环的情况下做到这一点?从某种意义上说,我想尝试"矢量化"这个总和.
我正在尝试重载一个Sum函数,该函数接受[list或vector] start和end迭代器作为参数.这个编译错误让我很困惑.相关代码如下:
template <typename T1, typename T2>
const double Sum(const typename T1::const_iterator& start_iter, const typename T2::const_iterator& end_iter)
{// overloaded function that calculates sum between two iterators
typename T1::const_iterator iterator_begin = start_iter;
typename T2::const_iterator iterator_end = end_iter;
double my_sum = 0;
for (iterator_begin; iterator_begin != iterator_end; iterator_begin++)
my_sum += *iterator_begin;
return my_sum;
}
int main()
{
list<double> test_list(10,5.1);
cout << Sum(test_list.begin(), test_list.end()); // compiler errors here
}
Run Code Online (Sandbox Code Playgroud)
我得到以下编译器错误:
iterators.cpp(72):错误C2783:'const double Sum(const T1 :: const_iterator&,const T2 :: const_iterator&)':无法推导'T1'的模板参数
iterators.cpp(72):错误C2783:'const double Sum(const T1 …
r ×8
c++ ×2
dataframe ×2
glm ×2
lm ×2
regression ×2
accumulate ×1
algorithm ×1
arrays ×1
bayesglm ×1
c# ×1
class ×1
constructor ×1
dictionary ×1
docker ×1
firefox ×1
gitlab ×1
iterator ×1
java ×1
javascript ×1
list ×1
matrix ×1
merge ×1
mlm ×1
overloading ×1
p-value ×1
pdf ×1
performance ×1
predict ×1
prediction ×1
quantmod ×1
r-grid ×1
registry ×1
selenium ×1
sendkeys ×1
stl ×1
templates ×1
xts ×1