小编mai*_*-sh的帖子

`stringr` 仅将数据框中的第一个字母转换为大写

我想将列中每个单词的第一个字母大写,而不将其余字母转换为小写。我正在尝试使用它,stringr因为它是矢量化的并且可以很好地与数据帧配合使用,但也会使用另一种解决方案。下面是一个表示,显示了我想要的输出和各种尝试。我只能选择第一个字母,但不知道如何将其大写。感谢您的帮助!

我还查看了相关帖子,但不确定如何在我的案例中应用这些解决方案(即在数据框中):

第一个字母改为大写

将双字字符串中两个单词的第一个字母大写

library(dplyr)
library(stringr)

words <-
  tribble(
    ~word, ~number,
    "problems", 99,
    "Answer", 42,
    "golden ratio", 1.61,
    "NOTHING", 0
  )

# Desired output
new_words <-
  tribble(
    ~word, ~number,
    "Problems", 99,
    "Answer", 42,
    "Golden Ratio", 1.61,
    "NOTHING", 0
  )

# Converts first letter of each word to upper and all other to lower
mutate(words, word = str_to_title(word))
#> # A tibble: 4 x 2
#>   word         number
#>   <chr>         <dbl>
#> 1 Problems      99   
#> 2 Answer        42 …
Run Code Online (Sandbox Code Playgroud)

string r uppercase stringr

5
推荐指数
1
解决办法
3718
查看次数

R:通过多个列值对数据帧进行索引

我是 R 的初学者,在使用列值向量对数据帧进行索引时遇到问题。

我想选择 2 位参与者的所有行。

data 是数据框。参与者是一个列

data[data$participant == c(8, 10),])

我认为这应该给我来自参与者 8 和 10 的所有行,但它却给我来自参与者 8 的一半行和来自参与者 10 的一半行。换句话说,

dim(data[data$participant == c(8, 10),])与 double相同dim(data[data$participant == 8,])dim(data[data$participant == 10,])不同。

问题似乎出在对这些多列类型进行索引的语法上: data$participant == c(8, 10)

我将不胜感激任何关于如何做到这一点的提示(无需单独为每个参与者做)!谢谢你!

indexing r dataframe

4
推荐指数
1
解决办法
5160
查看次数

标签 统计

r ×2

dataframe ×1

indexing ×1

string ×1

stringr ×1

uppercase ×1