我有一个datetime64类型的数组:
dates = np.datetime64(['2010-10-17', '2011-05-13', "2012-01-15"])
Run Code Online (Sandbox Code Playgroud)
有没有比循环遍历每个元素更好的方法来获得np.array年:
years = f(dates)
#output:
array([2010, 2011, 2012], dtype=int8) #or dtype = string
Run Code Online (Sandbox Code Playgroud)
我正在使用稳定的numpy版本1.6.2.
我使用direct = TRUE选项将一个大文件(~22 GB)加载到带有sqlldr的Oracle(否则可能需要几个月).所以它已经在那里坐了好几个小时,尽我所能加载,但是我无法知道它需要多长时间.有没有办法检查这种负载的进度?
在试图找出哪一个更好用时,我遇到了两个问题.
1)wilcox.test给出的W统计量与coin :: wilcox_test的统计量不同.这是我的输出:
wilcox_test:
Exact Wilcoxon Mann-Whitney Rank Sum Test
data: data$variableX by data$group (yes, no)
Z = -0.7636, p-value = 0.4489
alternative hypothesis: true mu is not equal to 0
Run Code Online (Sandbox Code Playgroud)
wilcox.test:
Wilcoxon rank sum test with continuity correction
data: data$variable by data$group
W = 677.5, p-value = 0.448
alternative hypothesis: true location shift is not equal to 0
Run Code Online (Sandbox Code Playgroud)
我知道W实际上有两个值,通常会报告较小的值.当wilcox.test与逗号而不是"〜"一起使用时,我可以得到另一个值,但是这个值为W = 834.5.据我了解,硬币::统计()可以使用("线性","标化"和"测试"),其中"线性"是正常的W和"标准化"是返回三个不同的统计只将W转换为z分数.这些都不匹配WI来自wilcox.test虽然(线性= 1055.5,标准化= 0.7636288,测试= -0.7636288).有什么想法发生了什么?
2)我喜欢wilcox_test中用于"distribution"和"ties.method"的选项,但似乎你不能像在wilcox.test中那样应用连续性校正.我对吗?
我需要修改data.table的特定行的某些列.我不断收到错误,"未使用的参数(带= F)".有谁知道如何快速处理这个?下面是使用data.frames和data.table的示例.
谢谢.
test.df <- data.frame(a=rnorm(100, 0, 1), b=rnorm(100, 0, 1), c=rnorm(100,0,1))
test.dt <- as.data.table(test.df)
test.df[test.df$a<test.df$b,c(1,2)] <- 10* test.df[test.df$a<test.df$b,c(1,2)]
test.dt[test.dt$a<test.dt$b, c(1,2), with=F] <- 10* test.dt[,c(1,2),with=F][test.dt$a<test.dt$b, c(1,2), with=F]
Run Code Online (Sandbox Code Playgroud)