Rのホームロケーションにデータを入力するためのループとIfステートメント

トラヴィス

Rコード:新しい列の家と住所に相当する金額を割り当てるために、空間的な場所を並べ替えるのに役立つ情報を探しています。「for、ifelse、if else、foreach、while」ループの100万コンボを試しました。いくつかのcsvファイルがあり、それらを追加してから、いくつかの列を追加しました。具体的には、Age == SeniorにTRUE / FALSE 1/0を追加して、新しい自宅の場所を特定しました。目標は、1が表示されるたびに同じ家番号を割り当て、次の1までその家番号を保持することです。すべての家番号が割り当てられたら、各建物の場所ですべての緯度/経度の中央値を生成し、その中央値の緯度を割り当てます。 / longを新しい列に追加します。中央値は、建物の場所ごとのGPSジャンプに役立ちます。私は家を数えるだけで立ち往生しています。最初の表:

緯度 経度 年齢 Spatial_id 地区
5.582719 -0.1596583 上級 1 tc01
5.582721 -0.1596585 大人 0 tc01
5.588345 -0.1656207 上級 1 tc01
5.588341 -0.1656206 大人 0 tc01
5.588342 -0.1656202 大人 0 tc01
5.588348 -0.1656203 0 tc01
5.588219 -0.1653842 上級 1 tc01
5.588219 -0.1653842 大人 0 tc01
5.588225 -0.1653841 0 tc01
5.588226 -0.1653841 0 tc01
spatial.loc <- c()
spatial.bldg <- c()
house.id = 100000

for (i in 1:nrow(merge.tc01)) {
  house.id = house.id + 1
  if(merge.tc01$spatial_id[i] == 1){
    spatial.loc <- append(spatial.loc, house.id)
    spatial.bldg <- paste0(merge.tc01$district,"_", spatial.loc)
  }
}

取得しようとしているポストプロダクション。

緯度 経度 年齢 Spatial_id 地区 Spatial_bldg Spatial_x Spatial_y
5.582719 -0.1596583 上級 1 tc01 tc01_100001 5.582720 -0.1596583
5.582721 -0.1596585 大人 0 tc01 tc01_100001 5.582720 -0.1596583
5.588345 -0.1656207 上級 1 tc01 tc01_100002 5.588344 -0.1656204
5.588341 -0.1656206 大人 0 tc01 tc01_100002 5.588344 -0.1656204
5.588342 -0.1656202 大人 0 tc01 tc01_100002 5.588344 -0.1656204
5.588348 -0.1656203 0 tc01 tc01_100002 5.588344 -0.1656204
5.588219 -0.1653842 上級 1 tc01 tc01_100003 5.588222 -0.1653841
5.588219 -0.1653842 大人 0 tc01 tc01_100003 5.588222 -0.1653841
5.588225 -0.1653841 0 tc01 tc01_100003 5.588222 -0.1653841
5.588226 -0.1653841 0 tc01 tc01_100003 5.588222 -0.1653841

助けてくれてありがとう。

これは少し近づいています。正しい数の1を数えることができますが、それは満たされず、代わりにインデックスを繰り返します。

spatial.loc <- c()
spatial.bldg <- c()
house.id = 100000

for (i in 1:nrow(merge.tc01)) {
  house.id = house.id + 1
  if(merge.tc01$spatial_id[i] == 1){
    spatial.loc <- append(spatial.loc, house.id)
    spatial.bldg <- paste0(merge.tc01$district,"_", spatial.loc)
    while (merge.tc01$spatial_id == 0) {
      spatial.loc <- append(spatial.loc)
      spatial.bldg <- paste0(merge.tc01$district,"_", spatial.loc)
    }
  }
}

spatial.loc
spatial.bldg
jay.sf

differencesがどこで成長するかを調べて1、を取り、cumsum入れsprintfます。

d <- transform(d, spatial_bldg=sprintf("%s_1%05d", District, 
                                       cumsum(diff(c(0, Spatial_id)) == 1)))
d
#    Latitude  Longitude    Age Spatial_id District spatial_bldg
# 1  5.582719 -0.1596583 Senior          1     tc01  tc01_100001
# 2  5.582721 -0.1596585  Adult          0     tc01  tc01_100001
# 3  5.588345 -0.1656207 Senior          1     tc01  tc01_100002
# 4  5.588341 -0.1656206  Adult          0     tc01  tc01_100002
# 5  5.588342 -0.1656202  Adult          0     tc01  tc01_100002
# 6  5.588348 -0.1656203  Child          0     tc01  tc01_100002
# 7  5.588219 -0.1653842 Senior          1     tc01  tc01_100003
# 8  5.588219 -0.1653842  Adult          0     tc01  tc01_100003
# 9  5.588225 -0.1653841  Child          0     tc01  tc01_100003
# 10 5.588226 -0.1653841  Child          0     tc01  tc01_100003
# 11 5.587270 -0.1743943 Senior          1     tc01  tc01_100004
# 12 5.587271 -0.1743942  Adult          0     tc01  tc01_100004
# 13 5.587270 -0.1743947  Child          0     tc01  tc01_100004
# 14 5.587282 -0.1743944  Child          0     tc01  tc01_100004
# 15 5.587273 -0.1743942  Adult          0     tc01  tc01_100004
# 16 5.587273 -0.1743941  Child          0     tc01  tc01_100004

sprintf文字ベクトル及びさらなる目的、文字列または数値の任意の数で構成されています。文字ベクトルでは、さらに各オブジェクトを次々に組み込み、%d整数と%s文字列を使用してそれらの場所をマークすることができます。ヘルプページで検索できる他のタイプもあります?sprintf

おそらくあなたは異なる地区を持っているでしょう、aveそれから調べてください


データ:

d <- read.csv("https://github.com/tnewton2/Rproject_tnewton2/files/6050112/merge_tc01.txt")

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

ホームコントローラーのすべてのインデックスアクションをキャッチするためにパラメーターをルーティングしようとしています

分類Dev

WHEREステートメントを使用してループ内のINSERTINTOテーブル(外部キー列にデータを入力するため)

分類Dev

マトリックス/データフレームにデータを入力するための整然としたソリューション

分類Dev

ユーザーが入力フィールドイベントに何かを入力したときに、入力フィールドイベントのプレースホルダーをアニメーション化する

分類Dev

データ(Androidアプリのアプリケーションフォームに入力)をWebサイト(ローカルホスト)に送信する方法は?

分類Dev

多層アプリケーションの入力データを検証するためのベストプラクティス

分類Dev

(Postgresql)カスタムレプリケーションのために、テーブルトリガー関数が変更された行のID値をログテーブルに挿入するようにします

分類Dev

修正が行われ、switchステートメントと曲選択時のユーザー入力のプロンプトを実装するために必要

分類Dev

データを取得するためのDIのすべてのアプリケーションでグローバルにアクセス可能なリスト

分類Dev

最小限のダウンタイムでJava Webアプリケーションをデプロイするためのベストプラクティス?

分類Dev

データを更新するための入力のAngularReactive Formsのデフォルト値は、プレースホルダーではなく値プロパティにバインドされていますが、送信時に「未定義」です。

分類Dev

Androidにインストールすると、ホーム画面にアプリケーションのショートカットを作成できません

分類Dev

2つのforループとifステートメントを使用して既存のデータフレームに新しい列を入力します

分類Dev

ユーザー入力をエスケープするよりもSQLインジェクションで「パラメーター化されたクエリ/プリペアドステートメント」がどのように優れているか

分類Dev

VLCプレーヤー:障害のあるプレイリストアイテムを無視します(「メイン入力エラー:入力を開くことができません」はアプリケーションをロックします)

分類Dev

2番目のプログラムに入力するときに、プログラム/アプリケーションでテキストをリアルタイムで更新する方法はありますか?

分類Dev

SQL-selectステートメントとループを使用してストアドプロシージャにデータを入力します

分類Dev

サイトのホームページにメタディスクリプションを表示する方法

分類Dev

矢印キーをサポートするstdinでの入力のためのクロスプラットフォームソリューション?

分類Dev

R最初のフレームにデータがあるグループのみを示すプロットアニメーションチャート

分類Dev

ルートにスペースを増やすために、暗号化されたルートパーティションとホームパーティションのサイズを変更するにはどうすればよいですか?

分類Dev

100を超えるデータをテーブルに入力するためのストアドプロシージャ

分類Dev

相関ルールのためにRapidMinerにトランザクション(バスケット)データをロードする方法は?

分類Dev

10kリクエスト処理のためのシステムとそのデータベースのスケーリング。分散データベースに対応するシャーディングまたはマイクロサービス

分類Dev

データベーステーブルとしてのデータ入力とストレージを必要とするWebアプリケーション用のJS / Ruby

分類Dev

Rシャイニー:データフレームをサブセット化するためのサーバーセクションで、uiからのUIテキスト入力を使用する方法は?

分類Dev

デスクトップアプリケーションからデータを投稿するためのMVC4コントローラーの再利用

分類Dev

ユーザー入力でMySQLデータベースを更新するためのプリペアドステートメント

分類Dev

サーバーからAndroidアプリケーションにデータを送信するためのベストプラクティス

Related 関連記事

  1. 1

    ホームコントローラーのすべてのインデックスアクションをキャッチするためにパラメーターをルーティングしようとしています

  2. 2

    WHEREステートメントを使用してループ内のINSERTINTOテーブル(外部キー列にデータを入力するため)

  3. 3

    マトリックス/データフレームにデータを入力するための整然としたソリューション

  4. 4

    ユーザーが入力フィールドイベントに何かを入力したときに、入力フィールドイベントのプレースホルダーをアニメーション化する

  5. 5

    データ(Androidアプリのアプリケーションフォームに入力)をWebサイト(ローカルホスト)に送信する方法は?

  6. 6

    多層アプリケーションの入力データを検証するためのベストプラクティス

  7. 7

    (Postgresql)カスタムレプリケーションのために、テーブルトリガー関数が変更された行のID値をログテーブルに挿入するようにします

  8. 8

    修正が行われ、switchステートメントと曲選択時のユーザー入力のプロンプトを実装するために必要

  9. 9

    データを取得するためのDIのすべてのアプリケーションでグローバルにアクセス可能なリスト

  10. 10

    最小限のダウンタイムでJava Webアプリケーションをデプロイするためのベストプラクティス?

  11. 11

    データを更新するための入力のAngularReactive Formsのデフォルト値は、プレースホルダーではなく値プロパティにバインドされていますが、送信時に「未定義」です。

  12. 12

    Androidにインストールすると、ホーム画面にアプリケーションのショートカットを作成できません

  13. 13

    2つのforループとifステートメントを使用して既存のデータフレームに新しい列を入力します

  14. 14

    ユーザー入力をエスケープするよりもSQLインジェクションで「パラメーター化されたクエリ/プリペアドステートメント」がどのように優れているか

  15. 15

    VLCプレーヤー:障害のあるプレイリストアイテムを無視します(「メイン入力エラー:入力を開くことができません」はアプリケーションをロックします)

  16. 16

    2番目のプログラムに入力するときに、プログラム/アプリケーションでテキストをリアルタイムで更新する方法はありますか?

  17. 17

    SQL-selectステートメントとループを使用してストアドプロシージャにデータを入力します

  18. 18

    サイトのホームページにメタディスクリプションを表示する方法

  19. 19

    矢印キーをサポートするstdinでの入力のためのクロスプラットフォームソリューション?

  20. 20

    R最初のフレームにデータがあるグループのみを示すプロットアニメーションチャート

  21. 21

    ルートにスペースを増やすために、暗号化されたルートパーティションとホームパーティションのサイズを変更するにはどうすればよいですか?

  22. 22

    100を超えるデータをテーブルに入力するためのストアドプロシージャ

  23. 23

    相関ルールのためにRapidMinerにトランザクション(バスケット)データをロードする方法は?

  24. 24

    10kリクエスト処理のためのシステムとそのデータベースのスケーリング。分散データベースに対応するシャーディングまたはマイクロサービス

  25. 25

    データベーステーブルとしてのデータ入力とストレージを必要とするWebアプリケーション用のJS / Ruby

  26. 26

    Rシャイニー:データフレームをサブセット化するためのサーバーセクションで、uiからのUIテキスト入力を使用する方法は?

  27. 27

    デスクトップアプリケーションからデータを投稿するためのMVC4コントローラーの再利用

  28. 28

    ユーザー入力でMySQLデータベースを更新するためのプリペアドステートメント

  29. 29

    サーバーからAndroidアプリケーションにデータを送信するためのベストプラクティス

ホットタグ

アーカイブ