我有两个具有相同列名但数据类型不同的数据框:
df1.dtypes
order
int64
x
int64
y
int64
Run Code Online (Sandbox Code Playgroud)
df2.dtypes
order
object
x
object
y
object
Run Code Online (Sandbox Code Playgroud)
数据帧比这大得多,所以我想捕获df1的名称/ dtypes并将df2转换为匹配.
我有一个名为 .pandas 的数据框df10。
cols10 = list(df10.columns)
Run Code Online (Sandbox Code Playgroud)
我想将数据类型更改double为列名开头的位置"m_"
for param in cols10:
if param.startswith("m_"):
df10[[param]] = df10[[param]].apply(pd.to_double)
Run Code Online (Sandbox Code Playgroud)
但是,我收到此错误:
AttributeError: 'module' object has no attribute 'to_double'
Run Code Online (Sandbox Code Playgroud) 我正在研究正则表达式,但无法弄清楚这个插入符号究竟做了什么。我认为这个插入符号的意思是“不等于”,但在下面的这个查询中,我很困惑:
SELECT REGEXP_REPLACE('San Antonio', '(^[[:alpha:]]+)', 'CITY') TEST
FROM DUAL;
Run Code Online (Sandbox Code Playgroud)
结果:
城市安东尼奥
'San' 应该符合 [:alpha:] 的要求,所以我不明白 caret 函数在这里做了什么。
我在数据框中有一列,我需要将其从对象转换为布尔值。但是,使用时,值从False变为。关于如何防止这种情况的任何想法?Trueastype
df['isgood'] 返回:
0 True
1 False
2 False
Run Code Online (Sandbox Code Playgroud)
df['isgood'].astype(bool) 返回:
0 True
1 True
2 True
Run Code Online (Sandbox Code Playgroud)