小编Sat*_*shR的帖子

使用XPathSApply调节多个属性来提取数据

以下网址包含数字和表格,我喜欢阅读表格的前两列.xpatahSApply命令工作正常,但我需要调整两个以上的属性,我无法弄清楚.

url ="http://floodobservatory.colorado.edu/SiteDisplays/1544data.htm"

doc=htmlTreeParse(url,useInternal=TRUE)
Run Code Online (Sandbox Code Playgroud)

解析数据的样本

<tr height="20" style="height:15.0pt">
<td height="20" class="xl6521398" align="right" style="height:15.0pt">11-Oct-13</td>
  <td class="xl7321398">1853</td>
  <td class="xl7321398"></td>
  <td class="xl8121398">0.80</td>
  <td class="xl7221398" align="right">4.87</td>
  <td class="xl1521398"></td>
  <td class="xl1521398"></td>
  <td class="xl1521398"></td>
  <td class="xl1521398"></td>
  <td class="xl1521398"></td>
  <td class="xl1521398"></td>
  <td class="xl7421398"></td>
  <td class="xl7421398"></td>
  <td class="xl7421398"></td>
  <td class="xl7421398"></td>
  <td class="xl9621398"></td>
  <td class="xl7421398"></td>
  <td class="xl8121398"></td>
 </tr>
Run Code Online (Sandbox Code Playgroud)

我需要从两个单元中读取值,其中一个对应于日期,另一个对应于流出口,并具有下面提到的属性

<td height="20" class="xl6521398" ...> and  [<td class="xl7321398"..]
Run Code Online (Sandbox Code Playgroud)

关于以上样本数据,我需要抓住"11-Oct-13"和"1853".

我使用以下命令来获取"日期"和"流量放电".

dates=xpathSApply(doc,"//td[@class='xl6521398']",xmlValue)

streamflowdischarge=xpathSApply(doc,"//td[@class='xl7321398']",xmlValue)
Run Code Online (Sandbox Code Playgroud)

他们成功地提取了信息,但提取的值包括来自其他表格/单元格的值,重要的是"日期"和"流量排放"不对应.

日期[1:10] [1]"1-Jan-98""2月1日 - 98""3月1日 - 98""31-Mar-98""4月1日 - 98""30-Apr-98 ""5月1日 - 98"[8]"31-May-98""6月1日 - 98""30-Jun-98"

"31-Mar-98"介于"3月1日至98日"和"4月1日至98日"之间 …

r html-parsing xml-parsing

6
推荐指数
1
解决办法
2644
查看次数

标签 统计

html-parsing ×1

r ×1

xml-parsing ×1