转换为tibble

时间:2017-03-15 16:43:27

标签: r dataframe

我有两个例子:

>a.tibble

names value1 value2
<chr> <chr>  <chr>
  a    3.14   2.18
  b    2.5    6.28

>b.tibble

names value1 value2
<chr> <chr>  <chr>
  a    1       0
  b    0       0

每个元组中的第一列都需要是字符类型。在a.tibble中,值必须是双倍而不是字符。在b.tibble中,值必须是因子而不是字符。如何更改这两个元素中的值的类型?是更改类型以将tibble转换为数据帧的唯一方法,然后更改类型,然后转换回tibble?

1 个答案:

答案 0 :(得分:2)

您可以使用class来指定现有tibble的列的类。运行此示例:

a.tibble <- tibble::data_frame(name = c("a","b"),value1=c(3.14,2.5),value2=c(2.18,6.28))
class(a.tibble[[2]])<-"character"
a.tibble # second column will be character
class(a.tibble[[2]])<-"numeric"
a.tibble # second column is numeric again

在下面的评论问题中想知道作为aosmith,你是如何到达那里的?在tibble上转置会返回一个矩阵,而不是一个tibble。