r语言教程 - r语言数据框添加列



在R中合并很多数据帧 (3)

我有关于2008-9年丹麦议会所有选票的数据。 问题是,每个投票记录在它自己的.txt文件中,具有以下格式(请参阅该文章的附录,以获得R三票的转储):

Name             Party  Vote
Anders Samuelsen LA     For
Rasmus Prehn     S      Imod
...              ...    ...

我想用下面的格式将所有的文件合并到一个数据帧中:

Name             Party  Vote1  Vote2  Vote3
Anders Samuelsen LA     For    Imod   Imod
Rasmus Prehn     S      Imod   For    Fraværende

(丹麦语翻译:For = yes,imod = no,FravÃ|rende=缺席)

总的来说,我有超过200个文件,所以问题是:我怎样才能编写一个循环,将所有数据帧合并到上面所需的结构中?

附录:

Vote1:

    structure(list(V1 = structure(c(2L, 3L, 4L, 7L, 8L, 5L, 6L, 9L, 
10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 
23L, 24L, 25L, 26L, 27L, 28L, 29L, 30L, 31L, 32L, 33L, 34L, 35L, 
36L, 37L, 38L, 40L, 41L, 42L, 43L, 44L, 45L, 46L, 47L, 48L, 49L, 
50L, 51L, 52L, 53L, 39L, 54L, 55L, 56L, 60L, 61L, 62L, 63L, 64L, 
65L, 66L, 67L, 68L, 69L, 70L, 71L, 72L, 73L, 74L, 57L, 58L, 59L, 
75L, 76L, 77L, 78L, 79L, 80L, 81L, 82L, 83L, 84L, 85L, 86L, 87L, 
88L, 89L, 90L, 91L, 92L, 93L, 94L, 96L, 97L, 98L, 95L, 99L, 100L, 
101L, 102L, 103L, 104L, 105L, 106L, 107L, 108L, 109L, 110L, 111L, 
112L, 113L, 114L, 115L, 116L, 117L, 118L, 119L, 120L, 121L, 122L, 
123L, 125L, 126L, 127L, 124L, 128L, 129L, 130L, 131L, 132L, 133L, 
134L, 135L, 136L, 137L, 139L, 140L, 141L, 138L, 142L, 143L, 144L, 
145L, 146L, 147L, 148L, 149L, 150L, 151L, 152L, 153L, 154L, 155L, 
160L, 161L, 162L, 163L, 164L, 156L, 157L, 158L, 159L, 165L, 166L, 
167L, 168L, 169L, 170L, 171L, 172L, 173L, 174L, 175L, 176L, 177L, 
178L, 179L, 1L), .Label = c("Özlem Sara Cekic", "Anders Samuelsen", 
"Anita Christensen", "Anita Knakkergaard", "Anne-Marie Meldgaard", 
"Anne-Mette Winther Christians", "Anne Baastrup", "Anne Grete Holmsgaard", 
"Annette Lilja Vilhelmsen", "Benny Engelbrecht", "Bent Bøgsted", 
"Bente Dahl", "Bertel Haarder", "Birgitte Josefsen", "Birthe Rønn Hornbech", 
"Bjarne Laustsen", "Brian Mikkelsen", "Britta Schall Holberg", 
"Carina Christensen", "Carsten Hansen", "Charlotte Dyremose", 
"Christine Antorini", "Claus Hjort Frederiksen", "Colette L. Brix", 
"Connie Hedegaard", "Dennis Flydtkjær", "Edmund Joensen", "Eigil Andersen", 
"Ellen Trane Nørby", "Erling Bonnesen", "Eva Kjer Hansen", "Eyvind Vesselbo", 
"Flemming Bonne", "Flemming Damgaard Larsen", "Flemming Møller", 
"Flemming Møller Mortensen", "Frank Aaen", "Gitte Lillelund Bech", 
"Høgni Hoydal", "Hanne Agersnap", "Hans Christian Schmidt", 
"Hans Christian Thoning", "Hans Kristian Skibby", "Helge Adam Møller", 
"Helge Sander", "Helle Sjelle", "Helle Thorning-Schmidt", "Henriette Kjær", 
"Henrik Brodersen", "Henrik Dam Kristensen", "Henrik Høegh", 
"Henrik Sass Larsen", "Holger K. Nielsen", "Ib Poulsen", "Ida Auken", 
"Inger Støjberg", "Jørgen Poulsen", "Jørgen S. Lundsgaard", 
"Jørn Dohrmann", "Jacob Jensen", "Jakob Axel Nielsen", "Jens Christian Lund", 
"Jens Kirk", "Jens Peter Vernersen", "Jens Vibjerg", "Jeppe Kofod", 
"Jesper Langballe", "Jesper Petersen", "Johanne Schmidt-Nielsen", 
"John Dyrby Paulsen", "Johs. Poulsen", "Jonas Dahl", "Juliane Henningsen", 
"Julie Rademacher", "Kamal Qureshi", "Karen Ellemann", "Karen Hækkerup", 
"Karen J. Klint", "Karen Jespersen", "Karin Nødgaard", "Karina Lorentzen Dehnhardt", 
"Karl H. Bornhøft", "Karsten Lauritzen", "Karsten Nonbo", "Kim Andersen", 
"Kim Christiansen", "Kim Mortensen", "Kirsten Brosbøl", "Klaus Hækkerup", 
"Knud Kristensen", "Kristen Touborg", "Kristian Jensen", "Kristian Pihl Lorentzen", 
"Kristian Thulesen Dahl", "Lars-Emil Johansen", "Lars Barfoed", 
"Lars Christian Lilleholt", "Lars Løkke Rasmussen", "Leif Lahn Jensen", 
"Lene Espersen", "Lene Hansen", "Lennart Damsbo-Andersen", "Line Barfod", 
"Lise von Seelen", "Liselott Blixt", "Lone Dybkjær", "Lone Møller", 
"Louise Schack Elholm", "Magnus Heunicke", "Malou Aamund", "Margrethe Vestager", 
"Marianne Jelved", "Marion Pedersen", "Marlene Harpsøe", "Martin Henriksen", 
"Meta Fuglsang", "Mette Frederiksen", "Mette Gjerskov", "Michael Aastrup Jensen", 
"Mike Legarth", "Mikkel Dencker", "Mogens Jensen", "Mogens Lykketoft", 
"Morten Østergaard", "Morten Bødskov", "Morten Helveg Petersen", 
"Morten Messerschmidt", "Nanna Westerby", "Naser Khader", "Nick Hækkerup", 
"Niels Christian Nielsen", "Niels Helveg Petersen", "Niels Sindal", 
"Ole Hækkerup", "Ole Sohn", "Ole Vagn Christensen", "Orla Hav", 
"Per Ørum Jørgensen", "Per Bisgaard", "Per Clausen", "Per Stig Møller", 
"Pernille Frahm", "Pernille Vigsø Bagge", "Peter Christensen", 
"Peter Juel Jensen", "Peter Skaarup", "Pia Adelsteen", "Pia Christmas-Møller", 
"Pia Kjærsgaard", "Pia Olsen Dyhr", "Poul Andersen", "Preben Rudiengaard", 
"Rasmus Prehn", "René Christensen", "René Skau Björnsson", 
"Søren Espersen", "Søren Gade", "Søren Krarup", "Søren Pind", 
"Simon Emil Ammitzbøll", "Sophie Hæstorp Andersen", "Sophie Løhde", 
"Steen Gade", "Svend Auken", "Thomas Adelskov", "Thomas Jensen", 
"Thor Pedersen", "Tina Nedergaard", "Tina Petersen", "Tom Behnke", 
"Torben Hansen", "Torsten Schack Pedersen", "Troels Christensen", 
"Troels Lund Poulsen", "Ulla Tørnæs", "Villum Christensen", 
"Villy Søvndal", "Vivi Kier", "Yildiz Akdogan"), class = "factor"), 
    V2 = structure(c(5L, 1L, 1L, 8L, 8L, 7L, 13L, 8L, 7L, 1L, 
    6L, 13L, 13L, 13L, 7L, 4L, 13L, 4L, 7L, 4L, 7L, 13L, 1L, 
    4L, 1L, 10L, 8L, 13L, 13L, 13L, 13L, 8L, 13L, 13L, 7L, 2L, 
    13L, 8L, 13L, 13L, 1L, 4L, 13L, 4L, 7L, 4L, 1L, 7L, 13L, 
    7L, 8L, 11L, 1L, 8L, 13L, 13L, 4L, 7L, 13L, 7L, 13L, 7L, 
    1L, 8L, 2L, 7L, 6L, 8L, 3L, 7L, 6L, 4L, 1L, 8L, 13L, 7L, 
    7L, 13L, 1L, 8L, 8L, 13L, 13L, 13L, 1L, 7L, 7L, 7L, 4L, 8L, 
    13L, 13L, 1L, 4L, 13L, 13L, 9L, 7L, 4L, 7L, 7L, 2L, 7L, 1L, 
    6L, 7L, 13L, 7L, 13L, 6L, 6L, 13L, 1L, 1L, 8L, 7L, 7L, 13L, 
    4L, 1L, 7L, 7L, 7L, 6L, 1L, 6L, 8L, 4L, 7L, 7L, 6L, 7L, 7L, 
    8L, 7L, 7L, 13L, 2L, 4L, 4L, 8L, 8L, 13L, 13L, 1L, 1L, 12L, 
    1L, 8L, 7L, 13L, 7L, 1L, 7L, 12L, 7L, 13L, 8L, 7L, 1L, 13L, 
    1L, 13L, 7L, 7L, 13L, 13L, 1L, 4L, 7L, 13L, 13L, 13L, 13L, 
    5L, 8L, 4L, 7L, 8L), .Label = c("DF", "EL", "IA", "KF", "LA", 
    "RV", "S", "SF", "SIU", "SP", "TF", "UFG", "V"), class = "factor"), 
    V3 = structure(c(1L, 1L, 1L, 3L, 3L, 2L, 1L, 3L, 3L, 1L, 
    3L, 1L, 1L, 2L, 3L, 1L, 1L, 2L, 2L, 1L, 3L, 2L, 2L, 2L, 1L, 
    2L, 3L, 1L, 1L, 2L, 1L, 2L, 1L, 1L, 3L, 2L, 1L, 3L, 2L, 1L, 
    1L, 1L, 2L, 2L, 2L, 1L, 1L, 3L, 1L, 2L, 2L, 2L, 1L, 2L, 2L, 
    1L, 1L, 3L, 1L, 3L, 2L, 2L, 2L, 3L, 3L, 3L, 2L, 3L, 2L, 3L, 
    2L, 1L, 2L, 2L, 2L, 3L, 2L, 1L, 1L, 3L, 3L, 2L, 1L, 1L, 2L, 
    3L, 2L, 3L, 2L, 3L, 1L, 1L, 2L, 1L, 1L, 2L, 2L, 3L, 2L, 3L, 
    3L, 3L, 3L, 1L, 3L, 3L, 1L, 3L, 2L, 2L, 3L, 1L, 1L, 1L, 3L, 
    3L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 3L, 2L, 2L, 3L, 1L, 3L, 3L, 
    3L, 3L, 2L, 2L, 3L, 3L, 2L, 2L, 2L, 2L, 3L, 2L, 2L, 1L, 2L, 
    1L, 2L, 2L, 2L, 3L, 1L, 3L, 1L, 2L, 1L, 3L, 1L, 2L, 2L, 2L, 
    2L, 1L, 1L, 2L, 3L, 2L, 2L, 1L, 1L, 2L, 1L, 1L, 2L, 1L, 2L, 
    2L, 1L, 3L, 2L), .Label = c("For", "Fraværende", "Imod"), class = "factor")), .Names = c("V1", 
"V2", "V3"), class = "data.frame", row.names = c(NA, -179L))

Vote2:

structure(list(V1 = structure(c(2L, 3L, 4L, 7L, 8L, 5L, 6L, 9L, 
10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 
23L, 24L, 25L, 26L, 27L, 28L, 29L, 30L, 31L, 32L, 33L, 34L, 35L, 
36L, 37L, 38L, 39L, 41L, 42L, 43L, 44L, 45L, 46L, 47L, 48L, 49L, 
50L, 51L, 52L, 53L, 54L, 40L, 55L, 56L, 59L, 60L, 61L, 62L, 63L, 
64L, 65L, 66L, 67L, 68L, 69L, 70L, 71L, 72L, 73L, 57L, 58L, 74L, 
75L, 76L, 77L, 78L, 79L, 80L, 81L, 82L, 83L, 84L, 85L, 86L, 87L, 
88L, 89L, 90L, 91L, 92L, 93L, 95L, 96L, 97L, 94L, 98L, 99L, 100L, 
101L, 102L, 103L, 104L, 105L, 106L, 107L, 108L, 109L, 110L, 111L, 
112L, 113L, 114L, 115L, 116L, 117L, 118L, 119L, 120L, 121L, 122L, 
124L, 125L, 126L, 123L, 127L, 128L, 129L, 130L, 131L, 132L, 133L, 
134L, 135L, 137L, 138L, 139L, 140L, 136L, 141L, 142L, 143L, 144L, 
145L, 146L, 147L, 148L, 149L, 150L, 151L, 152L, 153L, 154L, 159L, 
160L, 161L, 162L, 163L, 155L, 156L, 157L, 158L, 164L, 165L, 166L, 
167L, 168L, 169L, 170L, 171L, 172L, 173L, 174L, 175L, 176L, 177L, 
178L, 179L, 1L), .Label = c("Özlem Sara Cekic", "Anders Samuelsen", 
"Anita Christensen", "Anita Knakkergaard", "Anne-Marie Meldgaard", 
"Anne-Mette Winther Christians", "Anne Baastrup", "Anne Grete Holmsgaard", 
"Annette Lilja Vilhelmsen", "Bendt Bendtsen", "Benny Engelbrecht", 
"Bent Bøgsted", "Bente Dahl", "Bertel Haarder", "Birgitte Josefsen", 
"Birthe Rønn Hornbech", "Bjarne Laustsen", "Brian Mikkelsen", 
"Britta Schall Holberg", "Carina Christensen", "Carsten Hansen", 
"Charlotte Dyremose", "Christine Antorini", "Claus Hjort Frederiksen", 
"Colette L. Brix", "Connie Hedegaard", "Dennis Flydtkjær", "Edmund Joensen", 
"Eigil Andersen", "Ellen Trane Nørby", "Erling Bonnesen", "Eva Kjer Hansen", 
"Eyvind Vesselbo", "Flemming Bonne", "Flemming Damgaard Larsen", 
"Flemming Møller", "Flemming Møller Mortensen", "Frank Aaen", 
"Gitte Lillelund Bech", "Høgni Hoydal", "Hanne Agersnap", "Hans Christian Schmidt", 
"Hans Christian Thoning", "Hans Kristian Skibby", "Helge Adam Møller", 
"Helge Sander", "Helle Sjelle", "Helle Thorning-Schmidt", "Henriette Kjær", 
"Henrik Brodersen", "Henrik Dam Kristensen", "Henrik Høegh", 
"Henrik Sass Larsen", "Holger K. Nielsen", "Ib Poulsen", "Inger Støjberg", 
"Jørgen Poulsen", "Jørn Dohrmann", "Jacob Jensen", "Jakob Axel Nielsen", 
"Jens Christian Lund", "Jens Kirk", "Jens Peter Vernersen", "Jens Vibjerg", 
"Jeppe Kofod", "Jesper Langballe", "Jesper Petersen", "Johanne Schmidt-Nielsen", 
"John Dyrby Paulsen", "Johs. Poulsen", "Jonas Dahl", "Juliane Henningsen", 
"Julie Rademacher", "Kamal Qureshi", "Karen Ellemann", "Karen Hækkerup", 
"Karen J. Klint", "Karen Jespersen", "Karin Nødgaard", "Karina Lorentzen Dehnhardt", 
"Karl H. Bornhøft", "Karsten Lauritzen", "Karsten Nonbo", "Kim Andersen", 
"Kim Christiansen", "Kim Mortensen", "Kirsten Brosbøl", "Klaus Hækkerup", 
"Knud Kristensen", "Kristen Touborg", "Kristian Jensen", "Kristian Pihl Lorentzen", 
"Kristian Thulesen Dahl", "Lars-Emil Johansen", "Lars Barfoed", 
"Lars Christian Lilleholt", "Lars Løkke Rasmussen", "Leif Lahn Jensen", 
"Lene Espersen", "Lene Hansen", "Lennart Damsbo-Andersen", "Line Barfod", 
"Lise von Seelen", "Liselott Blixt", "Lone Dybkjær", "Lone Møller", 
"Louise Schack Elholm", "Magnus Heunicke", "Malou Aamund", "Margrethe Vestager", 
"Marianne Jelved", "Marion Pedersen", "Marlene Harpsøe", "Martin Henriksen", 
"Meta Fuglsang", "Mette Frederiksen", "Mette Gjerskov", "Michael Aastrup Jensen", 
"Mike Legarth", "Mikkel Dencker", "Mogens Jensen", "Mogens Lykketoft", 
"Morten Østergaard", "Morten Bødskov", "Morten Helveg Petersen", 
"Morten Messerschmidt", "Nanna Westerby", "Naser Khader", "Nick Hækkerup", 
"Niels Christian Nielsen", "Niels Helveg Petersen", "Niels Sindal", 
"Ole Hækkerup", "Ole Sohn", "Ole Vagn Christensen", "Per Ørum Jørgensen", 
"Per Bisgaard", "Per Clausen", "Per Husted", "Per Stig Møller", 
"Pernille Frahm", "Pernille Vigsø Bagge", "Peter Christensen", 
"Peter Juel Jensen", "Peter Skaarup", "Pia Adelsteen", "Pia Christmas-Møller", 
"Pia Kjærsgaard", "Pia Olsen Dyhr", "Poul Andersen", "Preben Rudiengaard", 
"Rasmus Prehn", "René Christensen", "René Skau Björnsson", 
"Søren Espersen", "Søren Gade", "Søren Krarup", "Søren Pind", 
"Simon Emil Ammitzbøll", "Sophie Hæstorp Andersen", "Sophie Løhde", 
"Steen Gade", "Svend Auken", "Thomas Adelskov", "Thomas Jensen", 
"Thor Pedersen", "Tina Nedergaard", "Tina Petersen", "Tom Behnke", 
"Torben Hansen", "Torsten Schack Pedersen", "Trine Mach", "Troels Christensen", 
"Troels Lund Poulsen", "Ulla Tørnæs", "Villum Christensen", 
"Villy Søvndal", "Vivi Kier", "Yildiz Akdogan"), class = "factor"), 
    V2 = structure(c(5L, 1L, 1L, 8L, 8L, 7L, 13L, 8L, 4L, 7L, 
    1L, 6L, 13L, 13L, 13L, 7L, 4L, 13L, 4L, 7L, 4L, 7L, 13L, 
    1L, 4L, 1L, 10L, 8L, 13L, 13L, 13L, 13L, 8L, 13L, 13L, 7L, 
    2L, 13L, 8L, 13L, 13L, 1L, 4L, 13L, 4L, 7L, 4L, 1L, 7L, 13L, 
    7L, 8L, 11L, 1L, 13L, 13L, 4L, 7L, 13L, 7L, 13L, 7L, 1L, 
    8L, 2L, 7L, 6L, 8L, 3L, 7L, 6L, 1L, 8L, 13L, 7L, 7L, 13L, 
    1L, 8L, 8L, 13L, 13L, 13L, 1L, 7L, 7L, 7L, 4L, 8L, 13L, 13L, 
    1L, 4L, 13L, 13L, 9L, 7L, 4L, 7L, 7L, 2L, 7L, 1L, 6L, 7L, 
    13L, 7L, 13L, 6L, 6L, 13L, 1L, 1L, 8L, 7L, 7L, 13L, 4L, 1L, 
    7L, 7L, 7L, 6L, 1L, 6L, 8L, 4L, 7L, 7L, 6L, 7L, 7L, 8L, 7L, 
    13L, 2L, 7L, 4L, 4L, 8L, 8L, 13L, 13L, 1L, 1L, 12L, 1L, 8L, 
    7L, 13L, 7L, 1L, 7L, 12L, 7L, 13L, 8L, 7L, 1L, 13L, 1L, 13L, 
    7L, 7L, 13L, 13L, 1L, 4L, 7L, 13L, 8L, 13L, 13L, 13L, 5L, 
    8L, 4L, 7L, 8L), .Label = c("DF", "EL", "IA", "KF", "LA", 
    "RV", "S", "SF", "SIU", "SP", "TF", "UFG", "V"), class = "factor"), 
    V3 = structure(c(3L, 1L, 1L, 3L, 2L, 2L, 2L, 2L, 2L, 3L, 
    1L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 2L, 2L, 2L, 3L, 2L, 2L, 2L, 
    1L, 2L, 3L, 2L, 2L, 2L, 3L, 2L, 3L, 3L, 3L, 3L, 3L, 2L, 2L, 
    3L, 1L, 3L, 3L, 3L, 2L, 2L, 1L, 2L, 3L, 2L, 3L, 2L, 1L, 2L, 
    3L, 3L, 3L, 3L, 3L, 2L, 3L, 1L, 3L, 2L, 2L, 2L, 3L, 2L, 3L, 
    2L, 1L, 3L, 2L, 3L, 2L, 3L, 2L, 3L, 3L, 3L, 2L, 3L, 1L, 2L, 
    3L, 3L, 2L, 2L, 3L, 3L, 1L, 3L, 3L, 2L, 2L, 3L, 2L, 3L, 2L, 
    2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 2L, 2L, 1L, 1L, 3L, 2L, 
    2L, 2L, 3L, 2L, 2L, 2L, 2L, 3L, 2L, 3L, 3L, 3L, 3L, 2L, 3L, 
    2L, 2L, 2L, 2L, 2L, 3L, 3L, 2L, 3L, 2L, 3L, 3L, 3L, 3L, 1L, 
    2L, 2L, 3L, 2L, 3L, 3L, 1L, 2L, 3L, 3L, 3L, 3L, 3L, 1L, 2L, 
    1L, 2L, 3L, 3L, 3L, 2L, 1L, 3L, 3L, 3L, 3L, 3L, 3L, 2L, 2L, 
    2L, 3L, 3L, 2L), .Label = c("For", "Fraværende", "Imod"), class = "factor")), .Names = c("V1", 
"V2", "V3"), class = "data.frame", row.names = c(NA, -179L))

Vote3:

structure(list(V1 = structure(c(2L, 3L, 4L, 7L, 8L, 5L, 6L, 9L, 
10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 
23L, 24L, 25L, 26L, 27L, 28L, 29L, 30L, 31L, 32L, 33L, 34L, 35L, 
36L, 37L, 38L, 39L, 41L, 42L, 43L, 44L, 45L, 46L, 47L, 48L, 49L, 
50L, 51L, 52L, 53L, 54L, 40L, 55L, 56L, 59L, 60L, 61L, 62L, 63L, 
64L, 65L, 66L, 67L, 68L, 69L, 70L, 71L, 72L, 73L, 57L, 58L, 74L, 
75L, 76L, 77L, 78L, 79L, 80L, 81L, 82L, 83L, 84L, 85L, 86L, 87L, 
88L, 89L, 90L, 91L, 92L, 93L, 95L, 96L, 97L, 94L, 98L, 99L, 100L, 
101L, 102L, 103L, 104L, 105L, 106L, 107L, 108L, 109L, 110L, 111L, 
112L, 113L, 114L, 115L, 116L, 117L, 118L, 119L, 120L, 121L, 122L, 
124L, 125L, 126L, 123L, 127L, 128L, 129L, 130L, 131L, 132L, 133L, 
134L, 135L, 137L, 138L, 139L, 140L, 136L, 141L, 142L, 143L, 144L, 
145L, 146L, 147L, 148L, 149L, 150L, 151L, 152L, 153L, 154L, 159L, 
160L, 161L, 162L, 163L, 155L, 156L, 157L, 158L, 164L, 165L, 166L, 
167L, 168L, 169L, 170L, 171L, 172L, 173L, 174L, 175L, 176L, 177L, 
178L, 179L, 1L), .Label = c("Özlem Sara Cekic", "Anders Samuelsen", 
"Anita Christensen", "Anita Knakkergaard", "Anne-Marie Meldgaard", 
"Anne-Mette Winther Christians", "Anne Baastrup", "Anne Grete Holmsgaard", 
"Annette Lilja Vilhelmsen", "Bendt Bendtsen", "Benny Engelbrecht", 
"Bent Bøgsted", "Bente Dahl", "Bertel Haarder", "Birgitte Josefsen", 
"Birthe Rønn Hornbech", "Bjarne Laustsen", "Brian Mikkelsen", 
"Britta Schall Holberg", "Carina Christensen", "Carsten Hansen", 
"Charlotte Dyremose", "Christine Antorini", "Claus Hjort Frederiksen", 
"Colette L. Brix", "Connie Hedegaard", "Dennis Flydtkjær", "Edmund Joensen", 
"Eigil Andersen", "Ellen Trane Nørby", "Erling Bonnesen", "Eva Kjer Hansen", 
"Eyvind Vesselbo", "Flemming Bonne", "Flemming Damgaard Larsen", 
"Flemming Møller", "Flemming Møller Mortensen", "Frank Aaen", 
"Gitte Lillelund Bech", "Høgni Hoydal", "Hanne Agersnap", "Hans Christian Schmidt", 
"Hans Christian Thoning", "Hans Kristian Skibby", "Helge Adam Møller", 
"Helge Sander", "Helle Sjelle", "Helle Thorning-Schmidt", "Henriette Kjær", 
"Henrik Brodersen", "Henrik Dam Kristensen", "Henrik Høegh", 
"Henrik Sass Larsen", "Holger K. Nielsen", "Ib Poulsen", "Inger Støjberg", 
"Jørgen Poulsen", "Jørn Dohrmann", "Jacob Jensen", "Jakob Axel Nielsen", 
"Jens Christian Lund", "Jens Kirk", "Jens Peter Vernersen", "Jens Vibjerg", 
"Jeppe Kofod", "Jesper Langballe", "Jesper Petersen", "Johanne Schmidt-Nielsen", 
"John Dyrby Paulsen", "Johs. Poulsen", "Jonas Dahl", "Juliane Henningsen", 
"Julie Rademacher", "Kamal Qureshi", "Karen Ellemann", "Karen Hækkerup", 
"Karen J. Klint", "Karen Jespersen", "Karin Nødgaard", "Karina Lorentzen Dehnhardt", 
"Karl H. Bornhøft", "Karsten Lauritzen", "Karsten Nonbo", "Kim Andersen", 
"Kim Christiansen", "Kim Mortensen", "Kirsten Brosbøl", "Klaus Hækkerup", 
"Knud Kristensen", "Kristen Touborg", "Kristian Jensen", "Kristian Pihl Lorentzen", 
"Kristian Thulesen Dahl", "Lars-Emil Johansen", "Lars Barfoed", 
"Lars Christian Lilleholt", "Lars Løkke Rasmussen", "Leif Lahn Jensen", 
"Lene Espersen", "Lene Hansen", "Lennart Damsbo-Andersen", "Line Barfod", 
"Lise von Seelen", "Liselott Blixt", "Lone Dybkjær", "Lone Møller", 
"Louise Schack Elholm", "Magnus Heunicke", "Malou Aamund", "Margrethe Vestager", 
"Marianne Jelved", "Marion Pedersen", "Marlene Harpsøe", "Martin Henriksen", 
"Meta Fuglsang", "Mette Frederiksen", "Mette Gjerskov", "Michael Aastrup Jensen", 
"Mike Legarth", "Mikkel Dencker", "Mogens Jensen", "Mogens Lykketoft", 
"Morten Østergaard", "Morten Bødskov", "Morten Helveg Petersen", 
"Morten Messerschmidt", "Nanna Westerby", "Naser Khader", "Nick Hækkerup", 
"Niels Christian Nielsen", "Niels Helveg Petersen", "Niels Sindal", 
"Ole Hækkerup", "Ole Sohn", "Ole Vagn Christensen", "Per Ørum Jørgensen", 
"Per Bisgaard", "Per Clausen", "Per Husted", "Per Stig Møller", 
"Pernille Frahm", "Pernille Vigsø Bagge", "Peter Christensen", 
"Peter Juel Jensen", "Peter Skaarup", "Pia Adelsteen", "Pia Christmas-Møller", 
"Pia Kjærsgaard", "Pia Olsen Dyhr", "Poul Andersen", "Preben Rudiengaard", 
"Rasmus Prehn", "René Christensen", "René Skau Björnsson", 
"Søren Espersen", "Søren Gade", "Søren Krarup", "Søren Pind", 
"Simon Emil Ammitzbøll", "Sophie Hæstorp Andersen", "Sophie Løhde", 
"Steen Gade", "Svend Auken", "Thomas Adelskov", "Thomas Jensen", 
"Thor Pedersen", "Tina Nedergaard", "Tina Petersen", "Tom Behnke", 
"Torben Hansen", "Torsten Schack Pedersen", "Trine Mach", "Troels Christensen", 
"Troels Lund Poulsen", "Ulla Tørnæs", "Villum Christensen", 
"Villy Søvndal", "Vivi Kier", "Yildiz Akdogan"), class = "factor"), 
    V2 = structure(c(5L, 1L, 1L, 8L, 8L, 7L, 13L, 8L, 4L, 7L, 
    1L, 6L, 13L, 13L, 13L, 7L, 4L, 13L, 4L, 7L, 4L, 7L, 13L, 
    1L, 4L, 1L, 10L, 8L, 13L, 13L, 13L, 13L, 8L, 13L, 13L, 7L, 
    2L, 13L, 8L, 13L, 13L, 1L, 4L, 13L, 4L, 7L, 4L, 1L, 7L, 13L, 
    7L, 8L, 11L, 1L, 13L, 13L, 4L, 7L, 13L, 7L, 13L, 7L, 1L, 
    8L, 2L, 7L, 6L, 8L, 3L, 7L, 6L, 1L, 8L, 13L, 7L, 7L, 13L, 
    1L, 8L, 8L, 13L, 13L, 13L, 1L, 7L, 7L, 7L, 4L, 8L, 13L, 13L, 
    1L, 4L, 13L, 13L, 9L, 7L, 4L, 7L, 7L, 2L, 7L, 1L, 6L, 7L, 
    13L, 7L, 13L, 6L, 6L, 13L, 1L, 1L, 8L, 7L, 7L, 13L, 4L, 1L, 
    7L, 7L, 7L, 6L, 1L, 6L, 8L, 4L, 7L, 7L, 6L, 7L, 7L, 8L, 7L, 
    13L, 2L, 7L, 4L, 4L, 8L, 8L, 13L, 13L, 1L, 1L, 12L, 1L, 8L, 
    7L, 13L, 7L, 1L, 7L, 12L, 7L, 13L, 8L, 7L, 1L, 13L, 1L, 13L, 
    7L, 7L, 13L, 13L, 1L, 4L, 7L, 13L, 8L, 13L, 13L, 13L, 5L, 
    8L, 4L, 7L, 8L), .Label = c("DF", "EL", "IA", "KF", "LA", 
    "RV", "S", "SF", "SIU", "SP", "TF", "UFG", "V"), class = "factor"), 
    V3 = structure(c(3L, 3L, 3L, 2L, 2L, 1L, 2L, 2L, 2L, 1L, 
    3L, 2L, 3L, 3L, 2L, 1L, 3L, 3L, 3L, 2L, 2L, 1L, 2L, 2L, 2L, 
    3L, 2L, 3L, 2L, 2L, 2L, 3L, 2L, 3L, 3L, 1L, 3L, 3L, 2L, 2L, 
    3L, 3L, 3L, 3L, 3L, 2L, 2L, 3L, 2L, 3L, 2L, 3L, 2L, 3L, 2L, 
    3L, 2L, 1L, 3L, 1L, 2L, 1L, 3L, 3L, 2L, 2L, 2L, 3L, 2L, 1L, 
    2L, 3L, 3L, 2L, 1L, 2L, 3L, 2L, 1L, 2L, 3L, 2L, 3L, 3L, 2L, 
    1L, 1L, 2L, 2L, 3L, 3L, 2L, 3L, 3L, 2L, 2L, 1L, 2L, 1L, 2L, 
    2L, 2L, 2L, 2L, 1L, 3L, 1L, 3L, 1L, 2L, 2L, 3L, 3L, 3L, 2L, 
    1L, 2L, 3L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 3L, 3L, 1L, 2L, 1L, 
    2L, 1L, 2L, 2L, 2L, 3L, 1L, 2L, 3L, 2L, 3L, 3L, 3L, 3L, 3L, 
    2L, 2L, 3L, 2L, 3L, 1L, 3L, 2L, 2L, 1L, 3L, 3L, 2L, 2L, 2L, 
    3L, 2L, 1L, 1L, 3L, 2L, 3L, 3L, 1L, 3L, 3L, 3L, 3L, 2L, 2L, 
    2L, 3L, 1L, 2L), .Label = c("For", "Fraværende", "Imod"), class = "factor")), .Names = c("V1", 
"V2", "V3"), class = "data.frame", row.names = c(NA, -179L))

https://src-bin.com


Answer #1

这里是使用hadley的plyr和reshape包的稍微不同的方法。

library(plyr);
library(reshape);

# function to read a single file

readFile = function(i){

    .file = paste("Vote", i, ".csv", sep = "");
    .vote = read.csv(.file);
     names(.vote) = c('name', 'party', 'vote');
    .vote$id = paste("Vote", i, sep = "");
     return(.vote);
}

nFiles = 200;

# read all data files and store as data frame
vote = ldply(1:nFiles, readFile);

# reshape data to get to the required format
vote2 = cast(vote, name + party ~ id, value = 'vote')

Answer #2

如果你认为Party总是相同的,那么只需要合并(两次)名称(==你的结构中的“V1”):

mergevotes <- merge(merge(Vote1, Vote2[, c(1,3)], by="V1"), Vote3[, c(1,3)], by="V1")
 names(mergevotes) <- c("Name", "Party",  "Vote1",  "Vote2",  "Vote3")

str(mergevotes)data.frame':176 obs。 5个变量:
$名称:因子瓦特/ 179水平“z zlem Sara Cekic”,..:1 2 3 4 7 8 5 6 9 10 ...
$ Party:有13个等级的因子“DF”,“EL”,“IA”,..:8 5 1 1 8 8 7 13 8 7 ...
$ Vote1:因子瓦特/ 3级别“For”,“FravÃ|rende”,..:2 1 1 1 3 3 2 1 3 3 ...
$投票2:因子瓦特/ 3级别“For”,“FravÃ|rende”,..:2 3 1 1 3 2 2 2 2 3 ...
$ Vote3:因子w / 3等级“For”,“FravÃ|rende”,..:2 3 3 2 2 1 1 2 2 1 ...
头(mergevotes)

                   Name Party       Vote1       Vote2       Vote3  
1     Özlem Sara Cekic    SF Fraværende Fraværende Fraværende
2      Anders Samuelsen    LA         For        Imod        Imod
3     Anita Christensen    DF         For         For        Imod
4    Anita Knakkergaard    DF         For         For        Imod
5         Anne Baastrup    SF        Imod        Imod Fraværende
6 Anne Grete Holmsgaard    SF        Imod Fraværende Fraværende

我希望SO界面可以很容易地指定像Courier这样的非比例字体。 它似乎在吃掉R提供的间距,以便在粘贴到文本部分时排列表格输出。


Answer #3

这是我如何处理多个进口。 我希望我的例子适合你的需求。 你所做的是读取目录中的所有文件名,将每个文件导入为列表元素,并将整个列表整合到一个data.frame中。 我假设你的文件以voting_results_*开头。

# Create a list of files
import.files <- as.list(grep("voting_results_", list.files(), value = TRUE))

importResults <- function(x) {
    read.table(x, header = TRUE) # customize this to meet your needs
}

# Using lapply on each list element, import all files into one list.
voting.results <- lapply(import.files, FUN = importResults)

# R bind all list elements into one big data.frame.
voting.results <- do.call("rbind", voting.results)

# Dance.




text-files