Tôi muốn lọc các hàng từ một số data.frame
dựa trên điều kiện lôgic. Giả sử rằng tôi có khung dữ liệu nhưLọc dữ liệu.hàng các hàng theo điều kiện logic
expr_value cell_type
1 5.345618 bj fibroblast
2 5.195871 bj fibroblast
3 5.247274 bj fibroblast
4 5.929771 hesc
5 5.873096 hesc
6 5.665857 hesc
7 6.791656 hips
8 7.133673 hips
9 7.574058 hips
10 7.208041 hips
11 7.402100 hips
12 7.167792 hips
13 7.156971 hips
14 7.197543 hips
15 7.035404 hips
16 7.269474 hips
17 6.715059 hips
18 7.434339 hips
19 6.997586 hips
20 7.619770 hips
21 7.490749 hips
Điều tôi muốn là có khung dữ liệu mới trông giống nhau nhưng chỉ có dữ liệu cho một cell_type. Ví dụ. tập hợp con/chọn hàng chứa các loại tế bào "hESC":
expr_value cell_type
1 5.929771 hesc
2 5.873096 hesc
3 5.665857 hesc
Hoặc một trong hai loại tế bào "bj nguyên bào sợi" hoặc "hESC":
expr_value cell_type
1 5.345618 bj fibroblast
2 5.195871 bj fibroblast
3 5.247274 bj fibroblast
4 5.929771 hesc
5 5.873096 hesc
6 5.665857 hesc
Có cách nào dễ dàng để làm được điều này?
Tôi đã thử:
expr[expr[2] == 'hesc']
# [1] "5.929771" "5.873096" "5.665857" "hesc" "hesc" "hesc"
nếu khung dữ liệu ban đầu được gọi là "expr", nhưng nó mang lại các kết quả trong định dạng sai như bạn có thể nhìn thấy.
Hãy nhận biết rằng '==' chức năng sẽ nhận bất kỳ NA ghi lại cũng như "hESC" , trong khi '% trong%' thì không. –
@Matt khi sử dụng 'tập hợp con' hoạt động như mong đợi. –