使用填充打印Python pandas数据框

时间:2017-08-31 20:40:25

标签: python pandas

我正在编写一个简短的脚本来验证CSV中的数据,并且我将结果格式化为转储到stdout,为了便于阅读,我在左侧添加了5个空格填充。注意:我没有使用format,因为我不想证明输出是正确的。

代码:

def duplicate_data():
    dup_df = inventory_df[inventory_df.duplicated(['STORE_NO','SKU'],keep=False)]
    if dup_df.empty:
        print(five, 'INFO: No Duplicate Entries Found')
    else:
        #print('\n')
        print(five, 'WARN: Duplicate STORE_ID and SKU Data Found!')
        print(five, dup_df.to_string(index=False))

结果:

在打印数据框之前一切正常:

      WARN: Duplicate STORE_ID and SKU Data Found!
      Please Copy/Paste the following and send to the customer:
      STORE_NO            SKU  ON_HAND_QTY
10000001  1000000000007            2
10000002  1000000000007            8 

我可以遍历行,但格式比上面的例子更糟。

for rows in dup_df.iterrows():
            print(five,rows)

关于如何格式化数据帧输出的任何想法?

1 个答案:

答案 0 :(得分:0)

不是很好,但你可以做这样的事情:

def padlines(text, padding):
    return "\n".join(padding + l for l in text.splitlines())

然后padlines(df.to_string(), five)