Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:从特定XML节点集提取数据_R_Xml_Node Set - Fatal编程技术网

R:从特定XML节点集提取数据

R:从特定XML节点集提取数据,r,xml,node-set,R,Xml,Node Set,我试图从XML文件中提取一些值。此XML包含来自议会成员的多个“spreekbeurten”(演讲)。每个“spreekbeurt”都有一名议长(议会议员)和“partij”(议员政党)。说话人可能不是党员;这样就没有聚会了。此特定XML文件具有105个“spreekbeurten”。因此,我的目标是为每个“spreekbeurt”检索以下值: //spreekbeurt/spreker/naam/achternaam #(surname of speaker) //spreekbeurt/sp

我试图从XML文件中提取一些值。此XML包含来自议会成员的多个“spreekbeurten”(演讲)。每个“spreekbeurt”都有一名议长(议会议员)和“partij”(议员政党)。说话人可能不是党员;这样就没有聚会了。此特定XML文件具有105个“spreekbeurten”。因此,我的目标是为每个“spreekbeurt”检索以下值:

//spreekbeurt/spreker/naam/achternaam #(surname of speaker)
//spreekbeurt/spreker/politiek   #(party of member)
//spreekbeurt/tekst/al-groep/al #(contains text of the 'spreekbeurt')
有关XML文件的片段,请参阅下文

根据“spreekbeurt”,我想提取值。逐个提取每个spreekbeurt的值的原因是,我想为'politiek'添加NA,以防丢失它

R码

 xml_file = xmlParse(paste0(getwd(),'/Xml/',dfRSS$Xml[23],'.xml'))
  xml_object = read_xml(paste0(getwd(),'/Xml/',dfRSS$Xml[23],'.xml'))

  titel = xml_object %>% 
    xml_find_all("//item-titel") %>%
    as_list() %>% unlist 

  spreekbeurt = xml_object %>% 
    xml_find_all("//spreekbeurt")

tekst = spreekbeurt[2]  %>% 
  xml_find_first("//spreekbeurt/tekst/al-groep/al") %>%
  as_list() %>% unlist

naam = spreekbeurt[2]  %>% 
  xml_find_first("//spreekbeurt/spreker/naam/achternaam") %>%
  as_list() %>% unlist 

partij = spreekbeurt[2]  %>% 
  xml_find_first("//spreekbeurt/spreker/politiek") %>%
  as_list() %>% unlist 
  • xml\u find\u首先返回节点集中的第一个,即使我在 spreekbeurt[2]
  • xml\u find\u all返回所有节点集
如何仅检索上面R中编码的第二个节点集的值

其他资料:

spreekbeurt的结果:

{xml_nodeset (105)}
 [1] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>De heer</voorvoegsels><naam><achternaam>Bisschop</achternaam ...
 [2] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>De</voorvoegsels><naam><achternaam>voorzitter</achternaam>< ...
 [3] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Voortman</achternaam ...
 [4] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>De heer</voorvoegsels><naam><achternaam>Verhoeven</achternaa ...
 [5] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Keijzer</achternaam> ...
 [6] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>De heer</voorvoegsels><naam><achternaam>Voordewind</achterna ...
 [7] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>De</voorvoegsels><naam><achternaam>voorzitter</achternaam>< ...
 [8] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>De heer</voorvoegsels><naam><achternaam>Harbers</achternaam> ...
 [9] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>De heer</voorvoegsels><naam><achternaam>Van Raak</achternaam ...
[10] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Kuiken</achternaam>< ...
[11] <spreekbeurt nieuw="ja">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Agema</achternaam></ ...
[12] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>De heer</voorvoegsels><naam><achternaam>Van Raak</achternaa ...
[13] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Agema</achternaam>< ...
[14] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>De heer</voorvoegsels><naam><achternaam>Van Raak</achternaa ...
[15] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Agema</achternaam>< ...
[16] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Voortman</achternaa ...
[17] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Agema</achternaam>< ...
[18] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Voortman</achternaa ...
[19] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Agema</achternaam>< ...
[20] <spreekbeurt nieuw="nee">\n  <spreker><voorvoegsels>Mevrouw</voorvoegsels><naam><achternaam>Voortman</achternaa ...
...
{xml_nodeset(105)}

[1] \n De heerbisschop要解决您的问题,请在//之前使用“.”。从xml2文档中可以看出:“#注意//和//#//在文档中的任意位置查找(忽略当前节点)#。//在当前节点下的任意位置查找”非常感谢!这就解决了问题。
<spreker>

  <voorvoegsels>De heer</voorvoegsels>

  <naam>

    <achternaam>Bisschop</achternaam>

  </naam> (<politiek>SGP</politiek>):</spreker>

<tekst status="goed">

  <al-groep>

    <al>Voorzitter. Ik ging ervan uit dat wij in volgorde van grootte van de fracties zouden spreken. Blijkbaar was mijn oriëntatie niet helemaal correct en ben ik snel aangemeld. Ik dank u dat ik als eerste het woord krijgt.</al>

  </al-groep>

  <al-groep>

    <al>Vanwege het ontbreken van een tegenkandidaat was de verkiezing van de nieuwe Kamervoorzitter bijna bij acclamatie gebeurd. Ik vermoed dat dit een unicum, een novum zou zijn geweest in de geschiedenis van de Staten-Generaal. Maar ook als het Kamervoorzitterschap wordt gecontinueerd, is enig decorum bij het vervullen van dit ambt op zijn plaats. Vandaar dat ook nu weer is voorzien in vier stemronden met zo nodig nog een tussenstemming. Wij kunnen aan de bak.</al>

  </al-groep>

  <al-groep>

    <al>Niet ontkend kan worden dat de stemming over de nieuwe Kamervoorzitter vandaag, iets weg heeft van een functioneringsbeoordeling. Aangezien een dergelijke beoordeling vertrouwelijk van aard is, doe ik over de inhoud daarvan geen mededelingen namens mijn fractie, al verheel ik niet dat de SGP-fractie het afgelopen jaar met waardering heeft kennisgenomen van het optreden van de Kamervoorzitter.</al>

  </al-groep>

  <al-groep>

    <al>De fractie van de SGP beperkt zich op dit moment tot twee vragen aan de kandidaat-voorzitter. In de eerste plaats wil ik de kandidaat-voorzitter een spiegel voorhouden van een van haar roemruchte voorgangers, de heer Vondeling. Hij was van dezelfde politieke familie en Kamervoorzitter van 1972 tot en met 1979. De onvolprezen parlementaire informatiebron Parlement en Politiek meldt onder meer het volgende over hem: "Hij trad soms als "schoolmeester" van de Kamer op. Toen bij de plenaire behandeling van een wetsvoorstel over het gevangeniswezen nog eens 75 feitelijke vragen waren gesteld, vroeg hij of niet beter de commissie voor Justitie nog eens bijeengeroepen was om ervoor te zorgen dat deze behandeling een andere inhoud kreeg." Ik voeg hieraan toe dat het woord "schoolmeester" in deze context als een positieve kwalificatie wordt gezien. Dat is het natuurlijk altijd wel, maar ik zeg het er hier nog eens speciaal bij. Het probleem was natuurlijk dat plenair nog zo veel vragen werden gesteld; dat verdiende een betere voorbereiding. Mijn vraag aan de kandidaat-voorzitter is hoe zij dit optreden van deze voorganger waardeert. Overigens mag ik er nog bij vertellen dat de heer Vondeling zijn opvolger als fractievoorzitter van de PvdA slechts wat velletjes briefpapier van de voetbalclub Cambuur naliet, althans zo gaat het verhaal. Dat blijft hier uiteraard buiten beschouwing.</al>

  </al-groep>

  <al-groep>

    <al>Dan kom ik bij de tweede vraag. Die heeft betrekking op de verantwoordelijkheid van de Kamervoorzitter voor de bedrijfsvoering van de Tweede Kamer, zeg maar de bedrijfsinterne taak. Ik doel dan met name op de zorg voor het Kamerpersoneel. Wij realiseren ons als Kamerleden misschien wel eens te weinig hoe cruciaal, maar ook hoe veeleisend de bijdrage van al deze mannen en vrouwen is voor het soepel laten functioneren van het parlementaire bedrijf in al zijn facetten. De kandidaat-voorzitter schrijft in haar brief over dit punt: "Veel gaat goed, maar het is ook nodig om de ambtelijke organisatie kritisch tegen het licht te houden. Samen met het Presidium heb ik het afgelopen jaar stappen gezet in de professionalisering en verzakelijking van de ambtelijke organisatie, maar we zijn er nog niet." Natuurlijk, de professionele en de zakelijke kant van het bedrijf moeten goed geregeld zijn, maar er is meer nodig voor een arbeidsvreugdevolle werkweek voor de medewerkers. Mijn tweede vraag is daarom: welke mogelijkheden ziet de beoogd Voorzitter om de immateriële aspecten van arbeidsvreugde te behouden of te bevorderen?</al>

  </al-groep>

  <al-groep>

    <al>Ik zie uit naar de reflecties van de kandidaat op deze vragen. Ik zeg dank voor de gelegenheid om het woord te voeren.</al>

  </al-groep>

</tekst>
<spreker>

  <voorvoegsels>De</voorvoegsels>

  <naam>

    <achternaam>voorzitter</achternaam>

  </naam>:</spreker>

<tekst status="goed">

  <al-groep>

    <al>Die reflecties zullen later volgen.</al>

  </al-groep>

</tekst>