使用数据框架中的分类变量的值创建一个新的数据框架?



尝试检索成本,如果s['O_Status']值为Closed,使用以下代码

得到这个错误,ValueError:一个Series的真值是模棱两可的。使用a.empty a.bool (), a.item (), a.any()或所有()

.

FClose = [i for i in s['Cost'] if s['O_Status'] == 'Closed']
Cost      Year      O_Status ----> data frame column name
-------------------------------
6100000   2001      Closed
100004    2009      Operating
2004000   2015      Closed
144007    1999      Operating

也有可能使分类变量值以以下格式关闭和操作到一个新的数据框架中,并存储相对成本值,

Closed     Operating ------> data frame column name
--------------------------    
6100000    100004    
2004000    144007      
import io
df = pd.read_csv(io.StringIO('''Cost      Year      O_Status
6100000   2001      Closed
100004    2009      Operating
2004000   2015      Closed
144007    1999      Operating'''), sep='s+', engine='python')
FClose = df[df['O_Status'] == 'Closed']['Cost'].tolist()
print(FClose)
FOp = df[df['O_Status'] == 'Operating']['Cost'].tolist()
print(FOp)
dfnew = pd.concat([pd.DataFrame(FClose, columns=['Closed']), pd.DataFrame(FOp, columns=['Operating'])], axis=1)

输出
Closed  Operating
0   6100000 100004
1   2004000 144007

最新更新