我想根据查询设置列的值。{{1}可能更容易实现cd1},但对于cd1}来说,这可能更容易实现。在
import numpy as np
import pandas as pd
np.random.seed(51723)
df = pd.DataFrame(np.random.rand(n, 3), columns=list('abc'))
我想创建一个新列d,并在满足以下条件时将值设置为1:
^{pr2}$除此之外,我还尝试过:
df['d'] = np.nan
df.query(criteria).loc[:,'d'] = 1
但这似乎除了给出SettingWithCopyWarning
之外什么也没做,即使我使用的是.loc
然后像这样传递inplace
:
df.query(criteria, inplace=True).loc[:,'d'] = 1
给出AttributeError: 'NoneType' object has no attribute 'loc'
AFAIK
df.query()
返回一个新的DF,因此请尝试以下方法:相关问题 更多 >
编程相关推荐