Rを使用してデータをスクレイピングするときにループを追加するにはどうすればよいですか?

シャンチャム

Trulia.comのデータに基づいて郵便番号で犯罪データのデータベースを作成しようとしています。以下のコードがありますが、これまでのところ、1行のデータしか生成されません。以下のコードでは、Zipcodesは米国の郵便番号の単なるリストです。これをリスト「i」全体で実行するには、何を追加する必要があるかを誰かに教えてもらえますか?

参考までに、Truliaページの1つへのリンクを次に示します:https//www.trulia.com/real_estate/20004-Washington/crime/

更新:ダウンロード用の郵便番号は次のとおりです:https//www.dropbox.com/s/uxukqpu0v88d7tf/Zip%20Code%20Database%20wo%20Boston.xlsx?dl = 0

また、郵便番号によって犯罪統計が異なる順序で表示されることに気付いた後、今回はコードを少し変更しました。ループで郵便番号ごとに4行を生成することは可能ですか?これは現在機能しますが、データセットの最後の郵便番号のみを生成します。各郵便番号のデータが別々の行に記録されていることを確認する方法がわからないため、上書きされず、最後の郵便番号の1行だけが残ります。

助けてください!!

 library(rvest)

 data=data.frame(Zipcodes)
 for(i in data$Zip.Code)
 {  
 site <- paste("https://www.trulia.com/real_estate/",i,"-Boston/crime/", sep="")
 site <- html(site)

 crime<- data.frame(zip =i,
        type =site %>% html_nodes(".brs") %>% html_text() ,
        stringsAsFactors=FALSE)
}
View(crime)

そのコードが機能しない場合は、次のことを試してください。

data=data.frame(Zillow_Data_for_R_Test)
for(i in data$Zip.Code)
site <- paste("https://www.trulia.com/real_estate/",i,"-Boston/crime/", sep="")
site <- read_html(site)
crime<- data.frame(zip =i,
         theft =site %>% html_nodes(".crime-text-0") %>% html_text() ,
         assault =site %>% html_nodes(".crime-text-1") %>% html_text() ,
         arrest =site %>% html_nodes(".crime-text-2") %>% html_text() ,
         vandalism =site %>% html_nodes(".crime-text-3") %>% html_text() ,
         robbery =site %>% html_nodes(".crime-text-4") %>% html_text() ,
         type =site %>% html_nodes(".clearfix") %>% html_text() ,
         stringsAsFactors=FALSE)
View(crime)
マヌエルビッケル

@ r2evansのコメントはすでに答えを提供しています。@ShanChamが実際にこれを実装する方法を尋ねたので、私は次のコードでガイドしたいと思いました。これはコメントよりも冗長であり、したがって追加のコメントとして投稿できませんでした。

library(rvest)

#only two exemplary zipcodes, could be more, of course
zipcodes <- c("02110", "02125")

crime <- lapply(zipcodes, function(z) {

  site <- read_html(paste0("https://www.trulia.com/real_estate/",z,"-Boston/crime/"))

           #for illustrative purposes:
           #introduced as.numeric to numeric columns
           #exluded some of your other columns and shortenend the current text in type
           data.frame(zip = z,
                      theft = site %>% html_nodes(".crime-text-0") %>% html_text() %>% as.numeric(),
                      assault = site %>% html_nodes(".crime-text-1") %>% html_text() %>% as.numeric() ,
                      type = site %>% html_nodes(".clearfix") %>% html_text() %>% paste(collapse = " ") %>% substr(1, 50) ,
                      stringsAsFactors=FALSE)
})

class(crime)
#list

#Output are lists that can be bound together to one data.frame
crime <- do.call(rbind, crime)

#crime is a data.frame, hence, classes/types are kept
class(crime$type)
# [1] "character"
class(crime$assault)
# [1] "numeric"

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

データがスクレイピングされるときに、年変数を表す列を追加するにはどうすればよいですか?

分類Dev

LARAVELを使用してスクレイピングされたデータをMysqlテーブルに送信するにはどうすればよいですか?

分類Dev

Webスクレイピングを使用してライブテーブルからデータを取得するにはどうすればよいですか?

分類Dev

Webスクレイパーを使用しているときに、1ページ目をスクレイピングすると、2ページ目をスクレイピングするようにするにはどうすればよいですか?

分類Dev

セレンでプロキシを使用して、データをスクレイピングするときにIP制限を回避するにはどうすればよいですか?

分類Dev

Python 3でテーブルをWebスクレイピングするときに、データが含まれているHTMLタグから目的のデータを分離するにはどうすればよいですか。

分類Dev

Magento:インストール/アップグレードスクリプトを使用して属性を追加するにはどうすればよいですか?

分類Dev

PythonまたはJavaScriptを使用して<canvas>要素のデータをスクレイピングするにはどうすればよいですか?

分類Dev

javascriptを使用して「personorgroup」タイプの列にピープルピッカーデータ(DisplayText)を追加するにはどうすればよいですか?

分類Dev

スクレイピングされたアイテムをループして、辞書またはパンダのデータフレームに追加するにはどうすればよいですか?

分類Dev

ファイルを作成し、その中にスクレイピングされたデータを保存するにはどうすればよいですか?

分類Dev

Pythonとbeautifulsoup4を使用して、Webサイトの複数のページのスクレイピングデータをループするにはどうすればよいですか?

分類Dev

pd.read_clipboardを使用してデータフレームをコピーするときにカスタム名前付きインデックスを処理するにはどうすればよいですか?

分類Dev

xcodeインターフェイスビルダーを使用してUIButtonにパディングを追加するにはどうすればよいですか?

分類Dev

Rを使用してURLのリストからニュース記事をスクレイピングするにはどうすればよいですか?

分類Dev

rbindlistを使用するときにデータセットごとにインデックスを追加するにはどうすればよいですか?

分類Dev

スクレイピングを使用して、Webページの開始点と終了点の間でデータをスクレイピングするにはどうすればよいですか?

分類Dev

VS CodeとMSVCツールチェーンを使用してRustプログラムをデバッグするときに、「パニック」にブレークポイントを設定するにはどうすればよいですか?

分類Dev

Laravelを使用してエクスポートするときに、Excelファイルのヘッダーとしてデータベースに保存されている月を動的に追加するにはどうすればよいですか?

分類Dev

PHPを使用してネストされたテーブルをWebスクレイピングするにはどうすればよいですか?

分類Dev

プレビュータブがClassNotFoundExceptionをスローしているときにクラス/ jarを追加するにはどうすればよいですか?

分類Dev

Python:xlsxファイルからデータをスクレイピングする構文を作成するにはどうすればよいですか?

分類Dev

カスタム投稿タイプループのクラスとして投稿タグを追加するにはどうすればよいですか?

分類Dev

gocollyでスクレイピングするときに、htmlテーブルセルの改行を保持するにはどうすればよいですか

分類Dev

bashスクリプトを使用してファイルを別のコンピューターに送信するにはどうすればよいですか?

分類Dev

Ubuntuのスクリプトを使用してハイフン文字でデータベース名を追加するにはどうすればよいですか?

分類Dev

'rvest'を使用してRでWebスクレイピングを行うときに、特定の行情報に基づいて追加の変数をデータにマージするためのベストプラクティスは何でしょうか。

分類Dev

データバウンドで新しいListItemを使用するときにcssクラスを追加するにはどうすればよいですか?

分類Dev

akkaストリームを使用して既存のコンシューマーグループに新しいコンシューマーを作成しているときに、kafkaトピックを終了するにはどうすればよいですか?

Related 関連記事

  1. 1

    データがスクレイピングされるときに、年変数を表す列を追加するにはどうすればよいですか?

  2. 2

    LARAVELを使用してスクレイピングされたデータをMysqlテーブルに送信するにはどうすればよいですか?

  3. 3

    Webスクレイピングを使用してライブテーブルからデータを取得するにはどうすればよいですか?

  4. 4

    Webスクレイパーを使用しているときに、1ページ目をスクレイピングすると、2ページ目をスクレイピングするようにするにはどうすればよいですか?

  5. 5

    セレンでプロキシを使用して、データをスクレイピングするときにIP制限を回避するにはどうすればよいですか?

  6. 6

    Python 3でテーブルをWebスクレイピングするときに、データが含まれているHTMLタグから目的のデータを分離するにはどうすればよいですか。

  7. 7

    Magento:インストール/アップグレードスクリプトを使用して属性を追加するにはどうすればよいですか?

  8. 8

    PythonまたはJavaScriptを使用して<canvas>要素のデータをスクレイピングするにはどうすればよいですか?

  9. 9

    javascriptを使用して「personorgroup」タイプの列にピープルピッカーデータ(DisplayText)を追加するにはどうすればよいですか?

  10. 10

    スクレイピングされたアイテムをループして、辞書またはパンダのデータフレームに追加するにはどうすればよいですか?

  11. 11

    ファイルを作成し、その中にスクレイピングされたデータを保存するにはどうすればよいですか?

  12. 12

    Pythonとbeautifulsoup4を使用して、Webサイトの複数のページのスクレイピングデータをループするにはどうすればよいですか?

  13. 13

    pd.read_clipboardを使用してデータフレームをコピーするときにカスタム名前付きインデックスを処理するにはどうすればよいですか?

  14. 14

    xcodeインターフェイスビルダーを使用してUIButtonにパディングを追加するにはどうすればよいですか?

  15. 15

    Rを使用してURLのリストからニュース記事をスクレイピングするにはどうすればよいですか?

  16. 16

    rbindlistを使用するときにデータセットごとにインデックスを追加するにはどうすればよいですか?

  17. 17

    スクレイピングを使用して、Webページの開始点と終了点の間でデータをスクレイピングするにはどうすればよいですか?

  18. 18

    VS CodeとMSVCツールチェーンを使用してRustプログラムをデバッグするときに、「パニック」にブレークポイントを設定するにはどうすればよいですか?

  19. 19

    Laravelを使用してエクスポートするときに、Excelファイルのヘッダーとしてデータベースに保存されている月を動的に追加するにはどうすればよいですか?

  20. 20

    PHPを使用してネストされたテーブルをWebスクレイピングするにはどうすればよいですか?

  21. 21

    プレビュータブがClassNotFoundExceptionをスローしているときにクラス/ jarを追加するにはどうすればよいですか?

  22. 22

    Python:xlsxファイルからデータをスクレイピングする構文を作成するにはどうすればよいですか?

  23. 23

    カスタム投稿タイプループのクラスとして投稿タグを追加するにはどうすればよいですか?

  24. 24

    gocollyでスクレイピングするときに、htmlテーブルセルの改行を保持するにはどうすればよいですか

  25. 25

    bashスクリプトを使用してファイルを別のコンピューターに送信するにはどうすればよいですか?

  26. 26

    Ubuntuのスクリプトを使用してハイフン文字でデータベース名を追加するにはどうすればよいですか?

  27. 27

    'rvest'を使用してRでWebスクレイピングを行うときに、特定の行情報に基づいて追加の変数をデータにマージするためのベストプラクティスは何でしょうか。

  28. 28

    データバウンドで新しいListItemを使用するときにcssクラスを追加するにはどうすればよいですか?

  29. 29

    akkaストリームを使用して既存のコンシューマーグループに新しいコンシューマーを作成しているときに、kafkaトピックを終了するにはどうすればよいですか?

ホットタグ

アーカイブ