我正在pandas程序包上在两个数据帧上执行点积运算,其中一个是形状(462,36),另一个是形状(36,34)。该操作返回所有正确的标头,并且返回的数据帧的大小正确,但是所有值均具有NaN。在原始数据帧中,每个值都是整数,我不确定为什么会发生此错误。
例如,我正在运行的代码是:
df_technique = pd.DataFrame(df_binary.dot(df_pim.values), columns=df_pim.columns, index=df_binary.index)
其中df_technique是所需的数据帧,df_binary是较大的数据帧,而df_pim是较小的数据帧。
例如,df_binary如下:
Customer ID Email Bait #1 Bait #2 Bait #3 ...
12345 i@me.com 1 0 1
...
df_pim看起来像:
Bait Number Technique #1 Technique #2 Technique #3 ...
Bait #1 1 0 0
...
预期输出为:
Customer ID Email Technique #1 Technique #2 Technique #3 ...
12345 i@me.com 1 3 4
...
结果数据框的形状应为(462,34)。
编辑:感谢@Wen,解决方案是:
df_technique = pd.DataFrame(df_binary.values.dot(df_pim.values), columns=df_pim.columns, index=df_binary.index)