Có cách nào để sử dụng chức năng ánh xạ hoặc một cái gì đó tốt hơn để thay thế các giá trị trong toàn bộ khung dữ liệu không?
Tôi chỉ biết làm thế nào để thực hiện ánh xạ trên loạt.
Tôi muốn thay thế các chuỗi trong cột 'TESST' và 'SET' bằng một số ví dụ SET = 1, test = 2
Dưới đây là một ví dụ về bộ dữ liệu của tôi: [Bộ dữ liệu gốc rất lớn]
ds_r
respondent brand engine country aware aware_2 aware_3 age tesst set
0 a volvo p swe 1 0 1 23 set set
1 b volvo None swe 0 0 1 45 set set
2 c bmw p us 0 0 1 56 test test
3 d bmw p us 0 1 1 43 test test
4 e bmw d germany 1 0 1 34 set set
5 f audi d germany 1 0 1 59 set set
6 g volvo d swe 1 0 0 65 test set
7 h audi d swe 1 0 0 78 test set
8 i volvo d us 1 1 1 32 set set
Kết quả cuối cùng nên là
ds_r
respondent brand engine country aware aware_2 aware_3 age tesst set
0 a volvo p swe 1 0 1 23 1 1
1 b volvo None swe 0 0 1 45 1 1
2 c bmw p us 0 0 1 56 2 2
3 d bmw p us 0 1 1 43 2 2
4 e bmw d germany 1 0 1 34 1 1
5 f audi d germany 1 0 1 59 1 1
6 g volvo d swe 1 0 0 65 2 1
7 h audi d swe 1 0 0 78 2 1
8 i volvo d us 1 1 1 32 1 1
David Buck
3.60833 Huy hiệu vàng30 Huy hiệu bạc35 Huy hiệu Đồng33 gold badges30 silver badges35 bronze badges
Đã hỏi ngày 14 tháng 6 năm 2013 lúc 18:20Jun 14, 2013 at 18:20
Còn
ds_r
respondent brand engine country aware aware_2 aware_3 age tesst set
0 a volvo p swe 1 0 1 23 1 1
1 b volvo None swe 0 0 1 45 1 1
2 c bmw p us 0 0 1 56 2 2
3 d bmw p us 0 1 1 43 2 2
4 e bmw d germany 1 0 1 34 1 1
5 f audi d germany 1 0 1 59 1 1
6 g volvo d swe 1 0 0 65 2 1
7 h audi d swe 1 0 0 78 2 1
8 i volvo d us 1 1 1 32 1 1
6 thì sao?In [9]: mapping = {'set': 1, 'test': 2}
In [10]: df.replace[{'set': mapping, 'tesst': mapping}]
Out[10]:
Unnamed: 0 respondent brand engine country aware aware_2 aware_3 age \
0 0 a volvo p swe 1 0 1 23
1 1 b volvo None swe 0 0 1 45
2 2 c bmw p us 0 0 1 56
3 3 d bmw p us 0 1 1 43
4 4 e bmw d germany 1 0 1 34
5 5 f audi d germany 1 0 1 59
6 6 g volvo d swe 1 0 0 65
7 7 h audi d swe 1 0 0 78
8 8 i volvo d us 1 1 1 32
tesst set
0 2 1
1 1 2
2 2 1
3 1 2
4 2 1
5 1 2
6 2 1
7 1 2
8 2 1
Như @Jeff đã chỉ ra trong các bình luận, trong các phiên bản Pandas