作者obarisk (OSWALT)
看板R_Language
标题Re: [问题] 资料转换
时间Sun Nov 15 13:04:20 2015
不想用 for
library(magrittr)
# 不肯定 da 是一个 tbl_df 有没有问题,da 是一个 data.frame 不会有问题
z2 <- da[, 'z'] %>% {.[ 1:length(.)-1 ] != .[ 2:length(.) ]} %>% c(T, .) %>%
cumsum
tapply(da[, 'x'], z2, simplify=F)
※ 引述《Rose9305 (台产零零柒)》之铭言:
: [问题类型]:
: 程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来)
: [软体熟悉度]:
: 新手(没写过程式,R 是我的第一次)
: [问题叙述]:
: 资料转换
: 我有个资料csv档,里面内容大概如下 :
: x y z
: 55 0.2 1
: 44 0.6 1
: 78 0.7 0
: 46 0.8 0
: 98 0.9 1
: 47 0.4 1
: 46 0.5 1
: 想(限)用 ''for 回圈''转换成只取x,z并以z重排x,如下:
: 1 55 44
: 0 78 46
: 1 98 47 46
: 把 z=1 排成一列,一遇到 z=0 又排成一列,再读到1又排成一列这样下去
: 不知道要如何用for回圈来把资料转换成上述。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.230.70.176
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1447563863.A.975.html