我有一个FFDF对象,我想在其中创建虚拟变量。具体来说,我有一个单独的名称向量,如果该向量中的名称与列向量中的名称匹配,我想创建虚拟变量在我的FFDF中。
举个例子,假设我有这个向量和这个FFDF对象:
Name
1. Blow, Joe
2. Smith, John
3. Jones, Tom
etc....
DonorName CandidateName DonationAmount CandidateParty
1 blow joe Bush, George W 3,000 Republican
2 guy some Obama, Barack 5,000 Democrat
3 smith john Reid, Harry 4,000 Democrat
我想要做的是在FFDF文件中创建一个单独的列,如果“Name”中的名称与“DonorName”中的名称匹配,则将其设为1。通常,我可以使用ifelse()命令,但是ff版本(ffifelse)给了我这个错误:“test需要是一个逻辑/布尔ff向量。”我还应该补充一点,我使用as.ffdf()命令将第一个向量强制转换为ffdf对象。
编辑:
我想我终于可以开始工作了。这行代码似乎可以解决问题。
ffdfobject$colname <- ffifelse(ffdfobject$DonorName %in% otherffdfobj$name, 1,0)