我对使用python的pandas和excel管理都是全新的。 我有2个numpy阵列:
它们中的每一个都形成一个26 * 26的矩阵,它将在excel表中写入同一文件中。为简化起见,我们可以举一个4 * 4的例子。该矩阵是三角形的。 我为每个矩阵创建了一个pandas df,然后用""替换0值。
df = pd.DataFrame(matrix, columns=col)
df = df.astype(str)
df.replace(['0', '0.0'], '', inplace=True)
一旦完成,我就把它写到excel:
df.to_excel(df.writer, sheet_name="Name", index=False)
我明白了:
f 20 50 100 150
20 val1 val2 val3 val4
50 val5 val6 val7
100 val8 val9
150 val10
编辑:正如您所看到的,我不想用0值填充单元格。
问题是这些值在excel中存储为文本;而不是数值(浮点数)。我在保存作者之前尝试过这个命令,但它并没有改变任何东西:
df.apply(pd.to_numeric, errors='ignore')
我该如何解决这个问题?
第二个问题是关于价值观:其中一些数字的位数太多(在%表格中)。一个简单的例子: 0.1586111111111111
如何将其减少到0.1586?
感谢您的帮助!