我正在使用SAS/SQL背景中的R,我正在尝试编写代码来获取两个表,比较它们,并提供差异列表.此代码将重复用于许多不同的表集,因此我需要避免硬编码.
我正在使用识别R中两个数据集之间的特定差异,但它并没有让我一路走来.
示例数据,使用LastName/FirstName(唯一)的组合作为键 -
Dataset One --
Last_Name First_Name Street_Address ZIP VisitCount
Doe John 1234 Main St 12345 20
Doe Jane 4321 Tower St 54321 10
Don Bob 771 North Ave 23232 5
Smith Mike 732 South Blvd. 77777 3
Dataset Two --
Last_Name First_Name Street_Address ZIP VisitCount
Doe John 1234 Main St 12345 20
Doe Jane 4111 Tower St 32132 17
Donn Bob 771 North Ave 11111 5
Desired Output --
LastName FirstName VarName TableOne TableTwo
Doe …Run Code Online (Sandbox Code Playgroud) 我有以下数据集,我想从宽到长格式重塑:
Name Code CURRENCY 01/01/1980 02/01/1980 03/01/1980 04/01/1980
Abengoa 4256 USD 1.53 1.54 1.51 1.52
Adidas 6783 USD 0.23 0.54 0.61 0.62
Run Code Online (Sandbox Code Playgroud)
这些数据包括1980年至2013年每天不同公司的股票价格.因此,我的广泛数据中有8,612列(和3,000行).现在,我使用以下命令将数据重新整形为长格式:
library(reshape)
data <- read.csv("data.csv")
data1 <- melt(data,id=c("Name","Code", "CURRENCY"),variable_name="Date")
Run Code Online (Sandbox Code Playgroud)
但是,对于大约50MB的.csv文件,它已经需要大约两个小时.计算时间不应该由弱硬件驱动,因为我在具有16GB RAM的2.7 GHz Intel Core i7上运行.有没有其他更有效的方法来做到这一点?
非常感谢!