2017-02-09 9 views
-5

У меня есть dataframe:Subset все строки по группам по типу

df <- data.frame(transaction= c(1,1,1,2,2,3,3,3,3,4,4,4), itemType = c("a","b","a","l","l","a","b","l","l","d","d","d")) Я в принципе хочу, чтобы все строки для транзакции, которые содержат тип элемента «а»

так что мой результат будет выглядеть следующим образом:

transaction itemType 
1   1  a 
2   1  b 
3   1  a 
4   3  a 
5   3  b 
6   3  l 
7   3  l 

Как написать код для совершения транзакций, содержащих &?

+0

'ФР [ДФ $ сделка% в% единственна (ДФ $ транзакционные [DF $ ItemType == 'а']),]' – Sotos

ответ

-1

Я хотел бы использовать индексацию

# save all the "transactions" where iteamtype equals "a" to an object called F 
f <- df[ df$itemType %in% "a" , "transaction" ] 

#optional (look as f) 
print(f) 
print(unique(f)) 

# Subset to all the rows which equals one of the "transactions" stored in the object f 
df[ df$transaction %in% unique(f) , ] 
+0

спасибо за ответ. Я знаю об этой возможности, но мне нужны ВСЕ строки для транзакций, содержащих a. – daveDo

+0

@daveDo только что обновлено, чтобы сделать это – MatthewR

+0

спасибо за ответ. Не могли бы вы объяснить эти две строки? – daveDo