を連結するループ。私は、以下のリンクで答えを探してみましたが、それで運は、基本的な質問をして申し訳ありません文字列
How to concatenate strings in a loop?
How to concatenate strings in a loop?
C concatenate string with int in loop
で、ここに再現可能な例ですしました。私は家のすなわち
家のリスト内のすべての要素が文字であるhouse <- c("Dining Room", "Drawing Room", "Number of Bathrooms", "5", "Number of Bedroom", "5", "Number of Kitchens", "1")
と呼ばれるリストをしました。今度は別のリストを作成します。listの要素の長さが1(数字を表す)の場合、それは前の文字列要素と連結する必要があります。これは私が期待している出力です。
"Dining Room", "Drawing Room", "Number of Bathrooms 5", "Number of Bedroom 5", "Number of Kitchens 1"
私はループを実行しようとしたが、出力は私が期待するものと類似していません。
for(i in house){ if(!is.na(nchar(house[i])) == 1) { cat(i,i-1) } else{ print(i) } }
私は、あなたのデータが最初に存在するのは非常に奇妙なことです。私はこのようなデータを得ることを避けるために非常に努力したいと思います。このデータを生成するプロセスが必要なので、そのプロセスを変更して、論理的に一貫性のある別のフォーマットでデータを生成することをお勧めします。 –
数字は「22」(2文字の長さ)、いいえ?どちらにしても、 'indx < - which(nchar(house)== 1)を実行することで、これを完全にベクトル化できます。 house [indx - 1] < - ペースト(house [indx - 1]、house [indx]); house [-indx] '、例えば –