如何在数据框中按列查找最大字符串长度

kal*_*rst 7 string r max

我的问题与类似.但对于字符串.

所以我有一个数据帧,每列包含不同长度的字符串.那么,我如何找到每列的最大字符串长度?

然后,如何通过sapply或类似选择长度> 1的列.

数据框的典型列如下所示:

clmn=c("XDX", "GUV", "FQ", "ACUE", "HIT", "AYX", "NFD", "AHBW", "GKQ", "PYF")
Run Code Online (Sandbox Code Playgroud)

谢谢

akr*_*run 13

我们可以用 nchar

max(nchar(clmn))
Run Code Online (Sandbox Code Playgroud)

用于查找每列的最大字符长度

lapply(df1, function(x) max(nchar(x)))
Run Code Online (Sandbox Code Playgroud)

如果我们需要过滤最大字符串长度大于1的列

df1[sapply(df1, function(x) max(nchar(x)))>1]
Run Code Online (Sandbox Code Playgroud)

要么

Filter(function(x) max(nchar(x)) >1, df1)
Run Code Online (Sandbox Code Playgroud)