我正在搜索一些文件以获取某些信息,并希望对事件进行计数。
第一次循环和计数器工作正常,但所有其他结果都是“0”。
#get columns not contains / and set index
cols = df.columns[~df.columns.str.contains('/')].tolist()
df = df.set_index(cols)
print (df)
North / South East / West No1 / No2 / No3
Name
ABC 0 / 1 0 / 0 10 / 3 / 6
XYZ 1 / 0 0 / 1 4 / 5 / 6
PQR 1 / 0 0 / 1 3 / 6 / 6
#create new columns names
c = df.columns.to_series().str.split(' / ', expand=True).stack().values.tolist()
print (c)
['North', 'South', 'East', 'West', 'No1', 'No2', 'No3']
#list comprehension with split to df and concat output
df = pd.concat([df[x].str.split(' / ', expand=True) for x in df], axis=1)
print (df)
0 1 0 1 0 1 2
Name
ABC 0 1 0 0 10 3 6
XYZ 1 0 0 1 4 5 6
PQR 1 0 0 1 3 6 6
#assign new columns names
df.columns = c
df = df.reset_index()
print (df)
Name North South East West No1 No2 No3
0 ABC 0 1 0 0 10 3 6
1 XYZ 1 0 0 1 4 5 6
2 PQR 1 0 0 1 3 6 6
答案 0 :(得分:0)