【发布时间】:2016-06-19 13:00:57
【问题描述】:
我的问题与to this 类似。但是对于字符串。
所以我有一个数据框,每列包含不同长度的字符串。那么,如何找到每列的最大字符串长度?
然后,如何通过 sapply 或类似方法选择长度大于 1 的列。
数据框的典型列如下所示:
clmn=c("XDX", "GUV", "FQ", "ACUE", "HIT", "AYX", "NFD", "AHBW", "GKQ", "PYF")
谢谢
【问题讨论】:
我的问题与to this 类似。但是对于字符串。
所以我有一个数据框,每列包含不同长度的字符串。那么,如何找到每列的最大字符串长度?
然后,如何通过 sapply 或类似方法选择长度大于 1 的列。
数据框的典型列如下所示:
clmn=c("XDX", "GUV", "FQ", "ACUE", "HIT", "AYX", "NFD", "AHBW", "GKQ", "PYF")
谢谢
【问题讨论】:
我们可以使用nchar
max(nchar(clmn))
用于查找每列的最大字符长度
lapply(df1, function(x) max(nchar(x)))
如果我们需要过滤最大字符串长度大于1的列
df1[sapply(df1, function(x) max(nchar(x)))>1]
或者
Filter(function(x) max(nchar(x)) >1, df1)
【讨论】: