データフレーム内のx文字ごとに文字列を分割

CodeNoob

これこれのnthように、文字列をすべての文字に分割することについていくつかの答えがあることを私は知っていますが、これらはかなり質問固有であり、ほとんどが単一の文字列に関連し、複数の文字列のデータフレームには関連していません。


データ例

df <- data.frame(id = 1:2, seq = c('ABCDEFGHI', 'ZABCDJHIA'))

このように見えます:

  id       seq
1  1 ABCDEFGHI
2  2 ZABCDJHIA

3文字ごとに分割

結果のデータフレームが次のようになるように、各行の文字列を3番目の文字ごとに分割します。

id  1   2   3
1   ABC DEF GHI
2   ZAB CDJ HIA

私が試したこと

splitstackshape以前を使用して、次のように1つの文字で文字列を分割df %>% cSplit('seq', sep = '', stripWhite = FALSE, type.convert = FALSE)しました。3つおきの文字で分割する同様の関数(またはcSplitで可能)が欲しいです。

akrun

オプションは separate

library(tidyverse)
df %>%
    separate(seq, into = paste0("x", 1:3), sep = c(3, 6))
# id  x1  x2  x3
#1  1 ABC DEF GHI
#2  2 ZAB CDJ HIA

より一般的なものを作成したい場合

n1 <- nchar(as.character(df$seq[1])) - 3
s1 <- seq(3, n1, by = 3)
nm1 <- paste0("x", seq_len(length(s1) +1))
df %>% 
    separate(seq, into = nm1, sep = s1)

またはbase R、を使用して、を使用strsplitして、正規表現ルックアラウンドをaに渡し、list次に要素に渡すことにより、3文字のインスタンスごとに「seq」列を分割rbindlistます。

df[paste0("x", 1:3)] <- do.call(rbind, 
           strsplit(as.character(df$seq), "(?<=.{3})", perl = TRUE))

注:数字などの非標準のラベルで始まる列名は避けることをお勧めします。そのため、名前の先頭に「x」を追加しました

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

データフレーム内の要素列のレベルごとに文字列の要素数を数える

分類Dev

データフレーム内の2つの文字列列を行ごとに比較します

分類Dev

pandasデータフレーム内の類似の文字列値を1年ごとにカウントする

分類Dev

PySparkデータフレームに列(文字列の配列)があります。配列を分割して、配列内の文字列アイテムごとに個別の行を作成するにはどうすればよいですか?

分類Dev

パンダデータフレーム内の文字列の分割

分類Dev

パンダデータフレーム内の文字列の分割

分類Dev

データフレーム内の行内の列文字列要素を分割する

分類Dev

Python:データフレーム内の文字列列を分割する方法は?

分類Dev

文字列内のリストを含むデータフレーム列を2列に分割します

分類Dev

データフレーム文字列列を複数の列に分割します

分類Dev

データフレーム文字列列を複数の列に分割します

分類Dev

データフレーム文字列列を複数の列に分割します

分類Dev

Pythonデータフレーム-文字列列を2つの列に分割

分類Dev

Pandasデータフレーム:混合フロート文字列列を個別のフロート列と文字列列に分割します

分類Dev

データフレームの列ごとに最大文字列長を見つける方法

分類Dev

Rデータフレーム:列内、行間、グループごとの文字列の集約

分類Dev

文字列のリストを高速でデータフレームに分割する

分類Dev

Rデータフレームのdplyr行ごとに2つの文字列を減算します

分類Dev

R-データフレーム内のさまざまな文字列長の列を1文字の複数の列に分割する

分類Dev

文字列を繰り返すことによるデータフレームの分割

分類Dev

条件に基づいてパンダデータフレーム列の特殊文字の文字列を分割する

分類Dev

値と区切り文字に基づいてデータフレーム内のすべての列を分割する

分類Dev

pandasデータフレーム列内のタプルで文字列を分割する

分類Dev

文字の値に基づいてデータフレーム文字を列に分割します

分類Dev

R データ フレーム内の文字列を反転

分類Dev

データフレーム内の列の値を小文字にする方法は?

分類Dev

データフレーム文字列列をパターンなしで複数の列に分割する

分類Dev

Rのデータフレームのn列の文字列を分割します

分類Dev

Rを使用したデータフレームの列としての文字列内の文字の頻度

Related 関連記事

  1. 1

    データフレーム内の要素列のレベルごとに文字列の要素数を数える

  2. 2

    データフレーム内の2つの文字列列を行ごとに比較します

  3. 3

    pandasデータフレーム内の類似の文字列値を1年ごとにカウントする

  4. 4

    PySparkデータフレームに列(文字列の配列)があります。配列を分割して、配列内の文字列アイテムごとに個別の行を作成するにはどうすればよいですか?

  5. 5

    パンダデータフレーム内の文字列の分割

  6. 6

    パンダデータフレーム内の文字列の分割

  7. 7

    データフレーム内の行内の列文字列要素を分割する

  8. 8

    Python:データフレーム内の文字列列を分割する方法は?

  9. 9

    文字列内のリストを含むデータフレーム列を2列に分割します

  10. 10

    データフレーム文字列列を複数の列に分割します

  11. 11

    データフレーム文字列列を複数の列に分割します

  12. 12

    データフレーム文字列列を複数の列に分割します

  13. 13

    Pythonデータフレーム-文字列列を2つの列に分割

  14. 14

    Pandasデータフレーム:混合フロート文字列列を個別のフロート列と文字列列に分割します

  15. 15

    データフレームの列ごとに最大文字列長を見つける方法

  16. 16

    Rデータフレーム:列内、行間、グループごとの文字列の集約

  17. 17

    文字列のリストを高速でデータフレームに分割する

  18. 18

    Rデータフレームのdplyr行ごとに2つの文字列を減算します

  19. 19

    R-データフレーム内のさまざまな文字列長の列を1文字の複数の列に分割する

  20. 20

    文字列を繰り返すことによるデータフレームの分割

  21. 21

    条件に基づいてパンダデータフレーム列の特殊文字の文字列を分割する

  22. 22

    値と区切り文字に基づいてデータフレーム内のすべての列を分割する

  23. 23

    pandasデータフレーム列内のタプルで文字列を分割する

  24. 24

    文字の値に基づいてデータフレーム文字を列に分割します

  25. 25

    R データ フレーム内の文字列を反転

  26. 26

    データフレーム内の列の値を小文字にする方法は?

  27. 27

    データフレーム文字列列をパターンなしで複数の列に分割する

  28. 28

    Rのデータフレームのn列の文字列を分割します

  29. 29

    Rを使用したデータフレームの列としての文字列内の文字の頻度

ホットタグ

アーカイブ