我在添加指定列的值时遇到问题。 请参阅以下代码以便您理解。
[可能的选项,但我真的不想在空白处添加无值。 ]
a3 = '[10:17:47-579318]A3016KR4167N30003007G1 0001189300000240101747570000000000000000 00011925 00011935 00011892 000118920019265002293475210000000000000000002 00012000 00011786'
df_0 = pd.DataFrame(columns = ['time', 'cur_p', 'exec_q', 'inv_t', 'l_lvl1_q', 's_lvl1_q', 'inv_l_q', 'inv_s_q', 's_or_l'])
b0_dic = {'time': a3[:17],
'cur_p': None,
'exec_q': None,
'inv_t': None,
'l_lvl1_q': a3[57:63],
's_lvl1_q': a3[139:145],
'inv_l_q': None,
'inv_s_q': None,
's_or_l': None,}
df_0.loc[len(df_0)] = b0_dic
df_0
由于上面的代码实际上没用,因为大数据集需要很长时间,
我想让它像下面的代码一样工作,
data0 = pd.DataFrame(columns = ['time', 'cur_p', 'exec_q', 'inv_t',
'l_lvl1_q', 's_lvl1_q',
'inv_l_q', 'inv_s_q', 's_or_l'])
dic = {'time': a3[:17],
'cur_p': a3[40:48],
'exec_q': a3[48:54],
's_or_l': a3[152:153]}
data0.loc[len(data0)] = dic
data0
但它给我一个错误代码
" ValueError:无法设置列不匹配的行"
请让我知道如何开发代码
非常感谢你。
答案 0 :(得分:2)
您可以使用:
df_0 = pd.DataFrame(columns = ['time', 'cur_p', 'exec_q', 'inv_t', 'l_lvl1_q',
's_lvl1_q', 'inv_l_q', 'inv_s_q', 's_or_l'])
df_0.loc[len(df_0), ['time', 'cur_p', 'exec_q', 's_or_l']] = [a3[:17],
a3[40:48], a3[48:54], a3[152:153]]
df_0