r - 将特定的观察和行变成 R 中的列
问题描述
我有类似于以下示例的行和列的数据,并且希望基本上将每隔一行转换为一列。但是,我还想提取每个特定的观察结果并将该结果放入相应的列中。所以我会采取:
X1 x y xx xy yy
ci.lo1 0 0 0 0 0 -19350.63073
ci.up1 0 0 0 0 0 104.23538
ci.lo2 0 0 0 0 0 -8740.25544
ci.up2 0 0 0 0 0 52.97149
并试图把它变成:
X1.lo X1.up x.lo x.up y.lo y.up xx.lo xx.up xy.lo xy.up yy.lo yy.up
1 0 0 0 0 0 0 0 0 0 0 -19350.63073 104.23538
2 0 0 0 0 0 0 0 0 0 0 -8740.25544 52.97149
我想知道是否可以在 中进行这种类型的转换tidy
,如果不是的话base R
。
提前致谢。
解决方案
data %>%
rownames_to_column() %>%
mutate(rowname2=sub("^ci\\.(.*)\\d$","\\1",rowname),
rowname =sub("[^0-9]+","", rowname)) %>%
pivot_wider(names_from = rowname2,
values_from = -c(rowname2, rowname),
id_cols = rowname,
names_sep = ".") %>%
column_to_rownames()
X1.lo X1.up x.lo x.up y.lo y.up xx.lo xx.up xy.lo xy.up yy.lo yy.up
1 0 0 0 0 0 0 0 0 0 0 -19350.631 104.23538
2 0 0 0 0 0 0 0 0 0 0 -8740.255 52.97149
推荐阅读
- ios - 过滤器在 swift 中将搜索栏添加到 Eureka 表单构建器中的 MultiplePushRow
- angularjs - 有时发布请求需要查询字符串 angularjs
- c# - dotnet core如何优雅地关闭子进程
- python - 训练用于对象识别的数据集(图像)的过程是什么?哪个分类器最好?
- ruby-on-rails - 使用 rspec 进行测试时,Rails 5.2.3 将所有参数数据类型转换为字符串
- html - 在 Heroku 应用程序中,图像被调整为 0 x 0
- amazon-web-services - 无法在 AWS Elastic Beanstalk 上选择可用区
- css - 全屏bg图像的推荐尺寸?
- java - 当它已经溢出时是否可以预测算术结果?
- excel - 从另一个工作表获取数据时,子“worksheet_calculate()”不会自动更新