データフレームの既存の3行ごとに空白行を挿入するにはどうすればよいですか?

ユニオールルハノスアーニャ

データフレームの既存の3行ごとに空白行を挿入するにはどうすればよいですか?Webスクレイピングプロセスの後、必要な情報を含むデータフレームを取得しますが、最終的なExcel形式では、3行ごとに空白行を追加する必要があります。Webでヘルプを検索しましたが、まだ解決策が見つかりません。

架空のデータでは、私のデータフレームの構造は次のとおりです。

mi_df <- data.frame(
  "ID" = rep(1:3,c(3,3,3)),  
  "X" = as.character(c("a", "a", "a", "b", "b", "b", "c", "c", "c")), 
  "Y" = seq(1,18, by=2)
  )

mi_df
  ID X  Y
1  1 a  1
2  1 a  3
3  1 a  5
4  2 b  7
5  2 b  9
6  2 b 11
7  3 c 13
8  3 c 15
9  3 c 17

私が望む結果はこのようなものです

   ID X  Y
1   1 a  1
2   1 a  3
3   1 a  5
4
5   2 b  7
6   2 b  9
7   2 b 11
8
9   3 c 13
10  3 c 15
11  3 c 17
ダレンツァイ

データフレームのインデックスにが含まれているNA場合、出力にはNA含まれます。したがって、私の目標は、のようなベクトルを作成し、1 2 3 NA 4 5 6 NA ...それをのインデックスとして設定することですmi_df

cut <- rep(1:(nrow(mi_df)/3), each = 3)
mi_df[sapply(split(1:nrow(mi_df), cut), c, NA), ]

#      ID    X  Y
# 1     1    a  1
# 2     1    a  3
# 3     1    a  5
# NA   NA <NA> NA
# 4     2    b  7
# 5     2    b  9
# 6     2    b 11
# NA.1 NA <NA> NA
# 7     3    c 13
# 8     3    c 15
# 9     3    c 17
# NA.2 NA <NA> NA

nrow(mi_df)が3の倍数でない場合、一般的な解決策は次のとおりです。

# Version 1
cut <- rep(1:ceiling(nrow(mi_df)/3), each = 3, len = nrow(mi_df))
mi_df[Reduce(c, lapply(split(1:nrow(mi_df), cut), c, NA)), ]

# Version 2
cut <- rep(1:ceiling(nrow(mi_df)/3), each = 3, len = nrow(mi_df))
mi_df[Reduce(function(x, y) c(x, NA, y), split(1:nrow(mi_df), cut)), ]

NAExcelファイルにデータを書き込む一部の関数には、NA値が文字列に変換されるか空になるかを制御するオプションの引数があるため、出力のを気にしないでください。例えば

library(openxlsx)
write.xlsx(df, "test.xlsx", keepNA = FALSE) # defaults to FALSE

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

bashとlibreoffice calc headlessで既存の.odtファイルに数行のデータを挿入するにはどうすればよいですか?

分類Dev

条件付きの列の値に基づいてデータフレームに行を挿入するにはどうすればよいですか?

分類Dev

データフレームの特定の行に新しい列の値を挿入するにはどうすればよいですか?

分類Dev

文(行)ごとにトークン化された単語(列)のデータフレームを作成するにはどうすればよいですか?

分類Dev

最初のデータフレームの一部の列で数学関数を実行しながら、既存のデータフレームのn行ごとに新しいデータフレームを作成するにはどうすればよいですか。

分類Dev

グループごとに計算を行ってパンダのデータフレームを更新するにはどうすればよいですか?

分類Dev

データフレームの行を四半期ごとにグループ化するにはどうすればよいですか?

分類Dev

一意の列値パンダデータフレームごとに行シリーズを追加するにはどうすればよいですか?

分類Dev

Rの列ごとに空白のデータフレーム列に列を追加するにはどうすればよいですか?

分類Dev

1つの列で行ごとにPandasデータフレームを比較するにはどうすればよいですか?

分類Dev

一意のIDごとにデータフレームで操作を実行するにはどうすればよいですか?

分類Dev

列の値に基づいて既存のデータフレームに新しい行を追加するにはどうすればよいですか?

分類Dev

1つの列のPythonデータフレームの空白行を他の列のデータで更新するにはどうすればよいですか?

分類Dev

あるデータフレームから別のデータフレームに日付を挿入するにはどうすればよいですか?

分類Dev

reStrutureTextのリストテーブルのタイトルとヘッダーの間に2行の空白行を挿入するにはどうすればよいですか?

分類Dev

データなしで空白行を削除するにはどうすればよいですか?

分類Dev

データフレームの行を入力として持つ行列のリストを取得するにはどうすればよいですか?

分類Dev

日ごと、個人ごとにグループ化し、比率を計算する既存のデータフレームから新しいデータフレームを作成するにはどうすればよいですか?

分類Dev

CSVからMYSQLに大量のデータ行を挿入するにはどうすればよいですか?

分類Dev

Rのデータフレームに行を追加するにはどうすればよいですか?

分類Dev

既存のパンダデータフレームに新しい行を追加するにはどうすればよいですか?

分類Dev

「除外」条件で行を作成し、既存のデータフレームに展開するにはどうすればよいですか?

分類Dev

データフレームから特定の行を除外するにはどうすればよいですか?

分類Dev

データフレームのすべての行に空白行を挿入する

分類Dev

Rの列としてデータフレームに実際の値を挿入するにはどうすればよいですか?

分類Dev

データフレームの3列ごとに各行の最大インデックスを取得するにはどうすればよいですか?

分類Dev

Pythonデータフレーム:同等のvlookupを実行するにはどうすればよいですか

分類Dev

Python:以下のデータフレーム操作を実行するにはどうすればよいですか

分類Dev

行の列ごとに動的にデータを追加するにはどうすればよいですか?

Related 関連記事

  1. 1

    bashとlibreoffice calc headlessで既存の.odtファイルに数行のデータを挿入するにはどうすればよいですか?

  2. 2

    条件付きの列の値に基づいてデータフレームに行を挿入するにはどうすればよいですか?

  3. 3

    データフレームの特定の行に新しい列の値を挿入するにはどうすればよいですか?

  4. 4

    文(行)ごとにトークン化された単語(列)のデータフレームを作成するにはどうすればよいですか?

  5. 5

    最初のデータフレームの一部の列で数学関数を実行しながら、既存のデータフレームのn行ごとに新しいデータフレームを作成するにはどうすればよいですか。

  6. 6

    グループごとに計算を行ってパンダのデータフレームを更新するにはどうすればよいですか?

  7. 7

    データフレームの行を四半期ごとにグループ化するにはどうすればよいですか?

  8. 8

    一意の列値パンダデータフレームごとに行シリーズを追加するにはどうすればよいですか?

  9. 9

    Rの列ごとに空白のデータフレーム列に列を追加するにはどうすればよいですか?

  10. 10

    1つの列で行ごとにPandasデータフレームを比較するにはどうすればよいですか?

  11. 11

    一意のIDごとにデータフレームで操作を実行するにはどうすればよいですか?

  12. 12

    列の値に基づいて既存のデータフレームに新しい行を追加するにはどうすればよいですか?

  13. 13

    1つの列のPythonデータフレームの空白行を他の列のデータで更新するにはどうすればよいですか?

  14. 14

    あるデータフレームから別のデータフレームに日付を挿入するにはどうすればよいですか?

  15. 15

    reStrutureTextのリストテーブルのタイトルとヘッダーの間に2行の空白行を挿入するにはどうすればよいですか?

  16. 16

    データなしで空白行を削除するにはどうすればよいですか?

  17. 17

    データフレームの行を入力として持つ行列のリストを取得するにはどうすればよいですか?

  18. 18

    日ごと、個人ごとにグループ化し、比率を計算する既存のデータフレームから新しいデータフレームを作成するにはどうすればよいですか?

  19. 19

    CSVからMYSQLに大量のデータ行を挿入するにはどうすればよいですか?

  20. 20

    Rのデータフレームに行を追加するにはどうすればよいですか?

  21. 21

    既存のパンダデータフレームに新しい行を追加するにはどうすればよいですか?

  22. 22

    「除外」条件で行を作成し、既存のデータフレームに展開するにはどうすればよいですか?

  23. 23

    データフレームから特定の行を除外するにはどうすればよいですか?

  24. 24

    データフレームのすべての行に空白行を挿入する

  25. 25

    Rの列としてデータフレームに実際の値を挿入するにはどうすればよいですか?

  26. 26

    データフレームの3列ごとに各行の最大インデックスを取得するにはどうすればよいですか?

  27. 27

    Pythonデータフレーム:同等のvlookupを実行するにはどうすればよいですか

  28. 28

    Python:以下のデータフレーム操作を実行するにはどうすればよいですか

  29. 29

    行の列ごとに動的にデータを追加するにはどうすればよいですか?

ホットタグ

アーカイブ