我试图转换真/假值在一个特定的列与一些字符串值,但它不来。我该怎么办?True/False是布尔值。范例:df1:
col1 col2 col3 Ram shyam True axa moh False sur ami True
字符串预期输出:df:
col1 col2 col3 Ram shyam right axa moh False sur ami right
型
yduiuuwa1#
可以使用np.where:
np.where
import pandas as pd, numpy as np dct = {"col1": ["Ram", "axa", "sur"], "col2": ["shyam", "moh", "ami"], "col3": [True, False, True]} df1 = pd.DataFrame.from_dict(dct) df1['col3'] = np.where(df1['col3'] == True, 'right', 'False') print(df1)
字符串这产生
col1 col2 col3 0 Ram shyam right 1 axa moh False 2 sur ami right
型注意,这将列col3的类型从bool更改为object。
col3
bool
object
qyswt5oh2#
您可以使用简单的**df.replace**命令,如下所示:
df.replace
In [1546]: df['col3'] = df['col3'].replace({True:'right'}) In [1547]: df Out[1546]: col1 col2 col3 0 Ram shyam right 1 axa moh False 2 sur ami right
字符串
hzbexzde3#
试试这个:
df["col3"] = df["col3"].apply(lambda x: "right" if x==True else False)
5lwkijsr4#
如果有人想替换多个cols中的字符串,而不是整个dataframe,这里有一个我在文档中没有看到的例子
df[cols] = df[cols].replace({"old": "new"})
4条答案
按热度按时间yduiuuwa1#
可以使用
np.where
:字符串
这产生
型
注意,这将列
col3
的类型从bool
更改为object
。qyswt5oh2#
您可以使用简单的**
df.replace
**命令,如下所示:字符串
hzbexzde3#
试试这个:
字符串
5lwkijsr4#
如果有人想替换多个cols中的字符串,而不是整个dataframe,这里有一个我在文档中没有看到的例子
字符串