データフレームがあり、データフレームのすべての列に数値が含まれているかどうかを確認します。
V1 V2 V3
1 114 9.078186 1.6310523
2 116 8.228931 1.6405415
3 117 8.043536 1.6625413
4 118 6.179346 0.8489116
私が使う
sapply(df,is.numeric)
これは戻ります
V1 V2 V3
TRUE TRUE TRUE
すべての列が数値であるかどうかを確認するにはどうすればよいですか?私は次のようなものを探しています:
if(sapply(df,is.numeric)==TRUE)
print(" All are Numeric")
ただし、ベクトルの長さが複数であるため、1つの条件のみをチェックするため、警告が表示されます。
Warning message:
In if (sapply(df, is.numeric) == TRUE):
the condition has length > 1 and only the first element will be used
sapplyはTrue / Falseベクトルを返します。エントリを1/0として扱い、合計が列の総数と等しいかどうかを確認できます。
if(sum(sapply(df,is.numeric))==ncol(df))
print(" All are Numeric")
または、all()関数を使用できます
if(all(sapply(df,is.numeric)))
print(" All are Numeric")
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加