2016-07-27 40 views
0

这应该很容易,但我无法弄清楚,搜索没有帮助。我想给一个数据框添加一列,这个数据框只是另一列中字符串的长度。将列添加到另一列中字符串长度为R的数据框

所以说我有名字像这样的数据帧:

Name Last 
1 John  Doe 
2 Edgar  Poe 
3 Walt Whitman 
4 Jane Austen 

我想追加一个新列的,比方说,姓氏字符串长度,所以它看起来像:

Name Last Length 
1 John  Doe 3 
2 Edgar  Poe 3 
3 Walt Whitman 7 
4 Jane Austen 6 

感谢

+4

使用'nchar'。 'df $ Length = nchar(df $ Last)'。 – Psidom

+0

这似乎不起作用。我得到错误“'nchar()'需要一个字符向量”。看起来像nchar()在char向量上运行,但不是char向量的列。我需要沿着“在列中的每个单元格上应用函数nchar,并将返回值添加到新列”这一行。“ – Turbo

+1

您可能只是将数据导入为因子。使用'df $ Length < - nchar(as.character(df $ Last))' – MrFlick

回答

1

我们可以使用str_countstringr

library(stringr) 
df1$Length <- str_count(df1$Last) 
df1$Length 
[1] 3 3 7 6 
相关问题