Hướng dẫn convert true false to 1 0 python pandas - chuyển đổi true false thành 1 0 pandas python

Tôi có một cột trong Python

[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
1 DataFrame có Boolean ________ 12/________ 13 giá trị, nhưng để tính toán thêm, tôi cần ____ 14/________ 15 đại diện. Có một cách nhanh chóng ____ 11/________ 17 để làm điều đó?

Hướng dẫn convert true false to 1 0 python pandas - chuyển đổi true false thành 1 0 pandas python

Đã hỏi ngày 29 tháng 6 năm 2013 lúc 17:53Jun 29, 2013 at 17:53

Hướng dẫn convert true false to 1 0 python pandas - chuyển đổi true false thành 1 0 pandas python

Simon Righleyimon RighleySimon Righley

4.2286 Huy hiệu vàng25 Huy hiệu bạc32 Huy hiệu Đồng6 gold badges25 silver badges32 bronze badges

4

Một cách ngắn gọn để chuyển đổi một cột của các giá trị boolean thành một cột số nguyên 1 hoặc 0:

df["somecolumn"] = df["somecolumn"].astype(int)

AMC

2.5847 Huy hiệu vàng12 Huy hiệu bạc34 Huy hiệu đồng7 gold badges12 silver badges34 bronze badges

Đã trả lời ngày 8 tháng 12 năm 2014 lúc 16:36Dec 8, 2014 at 16:36

6

Chỉ cần nhân DataFrame của bạn với 1 (int)

[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1

Đã trả lời ngày 5 tháng 6 năm 2016 lúc 21:54Jun 5, 2016 at 21:54

5

[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
2 là
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
4 trong Python và tương tự như vậy
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
3 là ________ 15*:

>>> True == 1
True
>>> False == 0
True

Bạn sẽ có thể thực hiện bất kỳ hoạt động nào bạn muốn trên chúng bằng cách chỉ xử lý chúng như thể chúng là số, vì chúng là số:

>>> issubclass(bool, int)
True
>>> True * 5
5

Vì vậy, để trả lời câu hỏi của bạn, không cần công việc - bạn đã có những gì bạn đang tìm kiếm.

* Lưu ý tôi sử dụng là một từ tiếng Anh, không phải từ khóa Python

>>> True == 1
True
>>> False == 0
True
2 -
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
2 sẽ không giống đối tượng như bất kỳ ngẫu nhiên
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
4.

Đã trả lời ngày 29 tháng 6 năm 2013 lúc 17:58Jun 29, 2013 at 17:58

Gareth Lattygareth LattyGareth Latty

84K16 Huy hiệu vàng178 Huy hiệu bạc178 Huy hiệu đồng16 gold badges178 silver badges178 bronze badges

5

Câu hỏi này đề cập cụ thể đến một cột duy nhất, vì vậy câu trả lời hiện đang được chấp nhận. Tuy nhiên, nó không khái quát cho nhiều cột. Đối với những người quan tâm đến một giải pháp chung, hãy sử dụng những điều sau đây:

df.replace({False: 0, True: 1}, inplace=True)

Điều này hoạt động cho một khung dữ liệu chứa các cột thuộc nhiều loại khác nhau, bất kể bao nhiêu là boolean.

Đã trả lời ngày 21 tháng 12 năm 2020 lúc 15:30Dec 21, 2020 at 15:30

Mike Trottamike TrottaMike Trotta

4164 Huy hiệu bạc6 Huy hiệu đồng4 silver badges6 bronze badges

0

Bạn cũng có thể làm điều này trực tiếp trên các khung

In [104]: df = DataFrame(dict(A = True, B = False),index=range(3))

In [105]: df
Out[105]: 
      A      B
0  True  False
1  True  False
2  True  False

In [106]: df.dtypes
Out[106]: 
A    bool
B    bool
dtype: object

In [107]: df.astype(int)
Out[107]: 
   A  B
0  1  0
1  1  0
2  1  0

In [108]: df.astype(int).dtypes
Out[108]: 
A    int64
B    int64
dtype: object

Đã trả lời ngày 29 tháng 6 năm 2013 lúc 18:17Jun 29, 2013 at 18:17

JeffjeffJeff

Huy hiệu vàng 121K2020 gold badges212 silver badges184 bronze badges

Sử dụng

>>> True == 1
True
>>> False == 0
True
5 để chuyển đổi boolean sang số nguyên:

df["somecolumn"] = df["somecolumn"].view('i1')

AMC

2.5847 Huy hiệu vàng12 Huy hiệu bạc34 Huy hiệu đồng7 gold badges12 silver badges34 bronze badges

Đã trả lời ngày 8 tháng 12 năm 2014 lúc 16:36Apr 13, 2020 at 12:41

Hướng dẫn convert true false to 1 0 python pandas - chuyển đổi true false thành 1 0 pandas python

Chỉ cần nhân DataFrame của bạn với 1 (int)jezrael

Đã trả lời ngày 5 tháng 6 năm 2016 lúc 21:5486 gold badges1228 silver badges1163 bronze badges

0

[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
2 là
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
4 trong Python và tương tự như vậy
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
3 là ________ 15*:

df = pd.DataFrame(my_data condition)

Bạn sẽ có thể thực hiện bất kỳ hoạt động nào bạn muốn trên chúng bằng cách chỉ xử lý chúng như thể chúng là số, vì chúng là số:

df = df*1

Vì vậy, để trả lời câu hỏi của bạn, không cần công việc - bạn đã có những gì bạn đang tìm kiếm.Dec 24, 2019 at 20:27

1

* Lưu ý tôi sử dụng là một từ tiếng Anh, không phải từ khóa Python

>>> True == 1
True
>>> False == 0
True
2 -
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
2 sẽ không giống đối tượng như bất kỳ ngẫu nhiên
[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
4.

Đã trả lời ngày 29 tháng 6 năm 2013 lúc 17:58
(Note: similar can be applied to any column name and values)

df.loc[df['type'] == 'FAKE', 'type'] = 0
df.loc[df['type'] == 'REAL', 'type'] = 1

Gareth Lattygareth LattySep 29, 2020 at 21:39

84K16 Huy hiệu vàng178 Huy hiệu bạc178 Huy hiệu đồngkaishu

Câu hỏi này đề cập cụ thể đến một cột duy nhất, vì vậy câu trả lời hiện đang được chấp nhận. Tuy nhiên, nó không khái quát cho nhiều cột. Đối với những người quan tâm đến một giải pháp chung, hãy sử dụng những điều sau đây:1 silver badge5 bronze badges

3

Điều này hoạt động cho một khung dữ liệu chứa các cột thuộc nhiều loại khác nhau, bất kể bao nhiêu là boolean.

[1]: data = pd.DataFrame([[True, False, True], [False, False, True]])
[2]: print data
          0      1     2
     0   True  False  True
     1   False False  True

[3]: print data*1
         0  1  2
     0   1  0  1
     1   0  0  1
0

Đã trả lời ngày 21 tháng 12 năm 2020 lúc 15:30Jan 17 at 14:35

Hướng dẫn convert true false to 1 0 python pandas - chuyển đổi true false thành 1 0 pandas python

Mike Trottamike TrottaSultanOrazbayev

4164 Huy hiệu bạc6 Huy hiệu đồng3 gold badges11 silver badges41 bronze badges

Làm thế nào để bạn thay đổi Đúng/Sai thành 1 0 trong Python?

Sử dụng lớp int () để chuyển đổi đúng và sai thành 1 và 0, ví dụ:Kết quả = int (true).Lớp int () sẽ trả về 1 cho các giá trị boolean thực sự và 0 cho các giá trị sai., e.g. result = int(True) . The int() class will return 1 for True boolean values and 0 for False values.

Làm thế nào để bạn thay thế đúng và sai bằng 0 và 1?

Bạn có thể nhân các giá trị boolean trả về (đúng hoặc sai) với 1, và sau đó đúng sẽ thay đổi thành 1 và sai thành 0.multiply the return Boolean values (TRUE or FALSE) by 1, and then the TRUE will change to 1, and FALSE to 0.

Làm thế nào để bạn chuyển đổi Boolean thành int in python?

Sử dụng lớp int () để chuyển đổi boolean thành số nguyên, ví dụ:my_int = int (my_bool).Lớp Int () sẽ chuyển đổi các giá trị thực thành 1 và các giá trị sai thành 0., e.g. my_int = int(my_bool) . The int() class will convert True values to 1 and False values to 0 .

Làm thế nào để bạn thay đổi giá trị boolean trong Python?

Truyền một dict để sử dụng thay thế trên df: df.replace ({'true': 1, 'false': 0}) - edchum.....
Bạn cũng có thể làm điều này trong chính chức năng của mình: df ['eq'] = df.apply (hàng lambda: 1 nếu hàng ['coname1'] == hàng ['coname2'].....
Tôi đã phải vật lộn với việc thay thế các giá trị Boolean bằng số nguyên !.