我正在使用两个Excel文件。一个是非常大的(~5到6 GB)数据集。这来自政府的公开支付数据,该数据免费开放供所有人查看。这是一个文件,列出了从工业界到医生的所有披露的付款,它向公众开放(这就是我截取屏幕截图的原因)。
我使用的第二个Excel文件也很大,但它是一个文件,列出了特定机构医生的披露付款。
我的目标:
我想过滤'公开支付数据只包括我在第二个Excel文件中的医生。有没有办法做到这一点?公开支付数据不一致,有一些大写和小写。
到目前为止我做了什么:
我已经能够解析开放式支付数据,只包括我正在寻找的医生的状态。我还将这两个.csv文件导入R并相应地命名。
我现在正在参加R课程,但它没有帮助......我在网上找到的大部分答案都是针对较小的数据集。我正在使用的数据有大约500,000行!提前感谢您的见解。
编辑:这是头(mydata)
Physician_Profile_ID Physician_First_Name
1 377519 KELLI
2 377519 KELLI
3 377519 KELLI
4 272641 ABDUL
5 272641 ABDUL
6 272641 ABDUL
Physician_Middle_Name Physician_Last_Name
1 A AABY
2 A AABY
3 A AABY
4 A AADAM
5 A AADAM
6 AADAM
Physician_Name_Suffix
1
2
3
4
5
6
Submitting_Applicable_Manufacturer_or_Applicable_GPO_Name
1 BioHorizons Implant Systems Inc.
2 BioHorizons Implant Systems Inc.
3 BioHorizons Implant Systems Inc.
4 APOLLO ENDOSURGERY INC
5 APOLLO ENDOSURGERY INC
6 BOSTON SCIENTIFIC CORPORATION
Applicable_Manufacturer_or_Applicable_GPO_Making_Payment_Name
1 BioHorizons Implant Systems Inc.
2 BioHorizons Implant Systems Inc.
3 BioHorizons Implant Systems Inc.
4 Apollo Endosurgery Inc
5 APOLLO ENDOSURGERY INC
6 Boston Scientific Corporation
Total_Amount_of_Payment_USDollars Date_of_Payment
1 11.55 6/17/2014
2 187.50 6/4/2014
3 222.24 5/23/2014
4 60.20 5/4/2014
5 110.15 7/28/2014
6 12.36 12/10/2014
Form_of_Payment_or_Transfer_of_Value
1 In-kind items and services
2 In-kind items and services
3 In-kind items and services
4 In-kind items and services
5 In-kind items and services
6 In-kind items and services
Nature_of_Payment_or_Transfer_of_Value City_of_Travel
1 Food and Beverage
2 Gift
3 Education
4 Food and Beverage
5 Food and Beverage
6 Food and Beverage
State_of_Travel Country_of_Travel
1
2
3
4
5
6
这是头(institution_data,2):
DB.ID Last.Name First.Name
1 12345 Johnson John
2 12354 Twain Mark
名称已更改为机密性。不幸的是,DB ID!= Physician_ID。
答案 0 :(得分:1)
可以构建医生ID的列表(实际矢量):
PHY_ID <- unique(
institution_data$DB.ID[ institution_data$DB.ID %in% mydata$Physician_Profile_ID ] )
然后使用与该向量的匹配从主文件中提取数据:
chargedata <- mydata[ mydata$Physician_Profile_ID %in% PHY_ID , ]
还可以使用match
使用相同的逻辑,但%in%
功能使用match
&#34;引擎盖下#34;用%in%
编写的代码通常更容易阅读。如果ID不匹配,如果是这种情况你应该说明,那么可以尝试进行名称匹配,但添加额外的标准是有意义的,例如附近的邮政编码状态。