如何使用dplyr避免R中的重复字段?

时间:2017-10-20 17:33:49

标签: python r csv

拜托,我想在R中重复我在Python 3中做过的数据交换 - 熊猫。最合适的方法是使用dplyr?

我有两张CSV。一个是关于政治家的捐款:每一行都是捐赠,每一行都有捐赠公司的名称和该公司的联邦注册号(CPF_CNPJ_doador - 该国每家公司都是唯一的)

CPF_CNPJ_doador Nome_doador                               Valor
73668675000187  CWVGRAFICA EDITORA E BAZAR EIRELI LTDA ME 1000,00

83647909000163  CARBONIFERA CRICIUMA S/A 1750,00

10731057000114  HAROLDO AZEVEDO CONSTRUÇÕES LTDA 100,00
...

其他CSV公司存在环境违规行为。您有几个数据,包括公司名称和该公司的联邦注册号(CPF_CNPJ - 该国家中每家公司都是唯一的)。但是,公司可能会在此CSV中出现多次 - 例如,可能有多个关联公司存在违规行为

Nome_Razao_Social   CPF_CNPJ
Carajas Madeiras Industria e Comercio Ltda - Me 02579504000214
Carbo Gás Ltda  03828695000435
Carbomil Química S/A    07645062000108
Carbomil Química S/A    07645062000108

我做了这两个CSV的pandas merge(Python 3):

ibama_doadores_orig= pd.merge(eleitos_d_doadores, ibama.drop_duplicates('CPF_CNPJ_limpo'), left_on='CPF_CNPJ_doador_originario', right_on='CPF_CNPJ_limpo', how = 'left')

然后我删除了空值

ibama_doadores_orig = ibama_doadores_orig[pd.notnull(ibama_doadores_orig['CPF_CNPJ_limpo'])]

两者都可以在CSV中复制(例如,政治家可以在不同日期接收来自同一公司的捐款,并在第二个csv中重复公司号码。)

但我希望得到所有捐款,即使他们来自重复公司的行。但是从第二个CSV我只想获得第一次出现

在Python中,这工作(我检查了Excel数据透视表)。请用R语言,有人知道怎么做吗?

数据示例

ibama文件的第一行:

    index   Nome_Razao_Social   CPF_CNPJ    CPF_CNPJ_limpo  UF_Embargo  Municipio_Embargo   Infracao    Data_Lista
0   0   Leandro Polli Ramos 050.153.549-75  5.015355e+09    SC  Passos Maia Vender, expor à venda, ter em depósito, transp...   10/07/2012
1   1   Antonio Marrocos Filho  046.465.921-34  4.646592e+09    GO  Cocalzinho de Goiás Executar pesquisa, lavra ou extração de recurs...   28/02/2007
2   2   Nilton Garcia Rodrigues 057.743.069-68  5.774307e+09    RO  Candeias do Jamari  Infração da Flora(Não Classificada-Móvel)   04/04/2017

文件eleitos_d_doadores的第一行:

index   UF  Partido_x   Cargo_x Nome_candidato_x    CPF_candidato   CPF_CNPJ_doador Nome_doador Nome_doador_Receita Valor   CPF_CNPJ_doador_originario  Nome_doador_originario  Nome_doador_originario_Receita  Estado  Cargo_y Nome_candidato_y    CPF Nome_urna   Partido_y   Situacao
0   0   BA  PRB Deputado Federal    ERONILDES VASCONCELOS CARVALHO  66858933549 2.056688e+13    ELEIÇÃO 2014 SIDELVAN DE ALMEIDA NOBREGA DEPUT...   ELEICAO 2014 SIDELVAN DE ALMEIDA NOBREGA DEPUT...   575 11055596534 CARMEM LUCIA N MAGALHÃES    CARMEN LUCIA MEIRA MAGALHAES    BAHIA   DEPUTADO FEDERAL    ERONILDES VASCONCELOS CARVALHO  66858933549 TIA ERON    PRB ELEITO POR QP
1   1   BA  PRB Deputado Federal    ERONILDES VASCONCELOS CARVALHO  66858933549 2.056688e+13    ELEIÇÃO 2014 SIDELVAN DE ALMEIDA NOBREGA DEPUT...   ELEICAO 2014 SIDELVAN DE ALMEIDA NOBREGA DEPUT...   2079,2  29369070559 GERALDO NASCIMENTO SANTOS   GERALDO NASCIMENTO SANTOS   BAHIA   DEPUTADO FEDERAL    ERONILDES VASCONCELOS CARVALHO  66858933549 TIA ERON    PRB ELEITO POR QP
2   2   BA  PRB Deputado Federal    ERONILDES VASCONCELOS CARVALHO  66858933549 2.056688e+13    ELEIÇÃO 2014 SIDELVAN DE ALMEIDA NOBREGA DEPUT...   ELEICAO 2014 SIDELVAN DE ALMEIDA NOBREGA DEPUT...   3900    

合并字段:CPF_CNPJ_limpo和CPF_CNPJ_original

Python最终结果:

,UF,Partido_x,Cargo_x,Nome_candidato_x,CPF_candidato,CPF_CNPJ_doador,Nome_doador,Nome_doador_Receita,Valor,CPF_CNPJ_doador_originario,Nome_doador_originario,Nome_doador_originario_Receita,Estado,Cargo_y,Nome_candidato_y,CPF,Nome_urna,Partido_y,Situacao,Nome_Razao_Social,CPF_CNPJ,CPF_CNPJ_limpo,UF_Embargo,Municipio_Embargo,Infracao,Data_Lista
87,RS,PP,Deputado Federal,JOSÉ ALFONSO EBERT HAMM,37040642034,887169000105.0,Direção Nacional,PARTIDO PROGRESSISTA,50000,66806555000133.0,FBS CONSTRUÇÃO CIVIL E PAVIMENTAÇÃO LTDA,FBS CONSTRUCAO CIVIL E PAVIMENTACAO S.A.,RIO GRANDE DO SUL,DEPUTADO FEDERAL,JOSÉ ALFONSO EBERT HAMM,37040642034,AFONSO HAMM,PP,ELEITO POR QP,Fbs Construcao Civil e Pavimentacao Ltda,66.806.555/0001-33,66806555000133.0,CE,Quixeramobim,"Executar pesquisa, lavra ou extração de minerais sem a competente autorização, permissão, concessão ou licença da autoridade ambiental competente ou em desacordo com a obtida.",11/10/2010
358,SC,PT,Deputado Federal,DÉCIO NERY DE LIMA,38858240944,79306908000188.0,Direção Estadual/Distrital,PARTIDO DOS TRABALHADORES DE SANTA CATARINA,350000,1317277000105.0,ITAPOÁ TERMINAIS PORTUÁRIOS SA,ITAPOA TERMINAIS PORTUARIOS S/A,SANTA CATARINA,DEPUTADO FEDERAL,DÉCIO NERY DE LIMA,38858240944,DÉCIO LIMA,PT,ELEITO POR QP,Itapoá Terminais Portuários Sa,01.317.277/0001-05,1317277000105.0,SC,Itapoá,"Construir, reformar, ampliar, instalar ou fazer funcionar estabelecimentos, obras ou serviços potencialmente poluidores ou utilizadores de recursos naturais, sem licença ou autorização dos órgãos ambientais competentes, em desacordo com a licença obtida ou contrariando as normas legais e regulamentos pertinentes.",22/10/2010
365,SC,PT,Deputado Federal,DÉCIO NERY DE LIMA,38858240944,79306908000188.0,Direção Estadual/Distrital,PARTIDO DOS TRABALHADORES DE SANTA CATARINA,50000,76614254000161.0,SUL CATARINENSE MINERAÇÃO ARTEFATOS DE CIMENTOS BRITAGEM E CONSTRUÇÕES LTDA,SULCATARINENSE MIN ARTEF DE CIM BRIT E CONSTRUCOES LTDA,SANTA CATARINA,DEPUTADO FEDERAL,DÉCIO NERY DE LIMA,38858240944,DÉCIO LIMA,PT,ELEITO POR QP,Sulcatarinense - Min. Art. Cim. Brit. e Cont. Ltda,76.614.254/0001-61,76614254000161.0,SC,Biguaçu,"Executar pesquisa, lavra ou extração de recursos minerais sem a competente licença ambiental ou em desacordo com a mesma.",22/12/2008

0 个答案:

没有答案