我正在使用 R 库中可用的 weatherAUS 数据集。我正在尝试将 RainTomorrow 列中的“是”替换为 1,将“否”替换为 0。
我写了这个,但它似乎不起作用:
weather4$RainTomorrow[weather4$RainTomorrow=="Yes"]<-1
Run Code Online (Sandbox Code Playgroud)
我只是说:
警告信息:在
[<-.factor(*tmp*, weather4$RainTomorrow == "Yes", value = c(NA, : invalid factor level, NA生成
这是什么意思,我应该怎么做?我认为我应该在某处使用 as.numeric 或 as.factor ,但我不知道究竟如何。
我目前正在学习C++并且对random_device有疑问.
我正试图模拟monty hall问题.为此,我需要随机整数来随机选择门.因此,我尝试创建一个为此目的返回随机整数的函数.
int guessGetRandomIndex() {
std::random_device rd; // obtain a random number from hardware
std::mt19937 eng(rd()); // seed the generator
std::uniform_int_distribution<> distr(0, 2);
return distr(eng);
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试在main()中获取随机整数时,我会保持相同的数字.
vector<int> v = {0, 1, 2, 3, 4, 5};
for (auto & j : v){
int random = guessGetRandomIndex();
std::cout << random << ' ';
}
Output: 1 1 1 1 1 etc.
Run Code Online (Sandbox Code Playgroud)
然而,当我将随机设备放在主循环中并执行相同操作时,我设法得到随机整数.
std::random_device rd; // obtain a random number from hardware
std::mt19937 eng(rd()); // seed the generator
std::uniform_int_distribution<> distr(0, 2); // …Run Code Online (Sandbox Code Playgroud) 我知道可以将 java 中的纳秒转换为这样的时间戳:
import java.util.Date;
public class DateDemo {
public static void main(String args[]) {
// Instantiate a Date object
long i = 1462352019029395103L;
// display time and date using toString()
Date date = new Date(i / 1000000);
System.out.println(date.toString());
}
}
Run Code Online (Sandbox Code Playgroud)
此品牌:UTC 2016 年 5 月 4 日星期三 08:53:39
在 Python 中,输出是:
>>> from datetime import datetime
>>> dt = datetime.fromtimestamp(1462352019029395103 // 1000000000)
>>> s = dt.strftime('%Y-%m-%d %H:%M:%S')
>>> s
'2016-05-04 10:53:39'
Run Code Online (Sandbox Code Playgroud)
在 python 中的差异是 2 小时。我不知道确切的原因。我读过一些早期的帖子,说 Python 无法转换纳秒。有什么办法可以在python中获得准确的时间戳吗?