设置单元格长度

2024-10-02 08:25:35 发布

您现在位置:Python中文网/ 问答频道 /正文

有时我想读取输出数据帧并将其缩进。 例如,如果我有dataframe

A     |B     |C     |D     |     E
abc|def|ghij|k|ooo
lorem|ipsumjkl|d|amet|hel

我有一个要应用的长度列表alist = [5,8,4,1,3]

A    |B       |C   |D|E
abc  |def     |ghij|k|ooo
lorem|ipsumjkl|dol |a|hel

我想到了这个

df.applymap(lambda x: str(x).ljust(elem) for elem in alist).to_csv("report.csv", sep="|", index=False)

但是我得到了这个错误

TypeError: ("'generator' object is not callable", 'occured at index xxxx')

如何输出具有给定长度列表的csv文件


Tags: csv数据dataframe列表indexdefabclorem
1条回答
网友
1楼 · 发布于 2024-10-02 08:25:35

您可以尝试以下方法:

for i,colum in enumerate(list(df.columns)):

    df[colum]=df[colum].apply(lambda x: str(x).ljust(alist[i]))

df.to_csv("report.csv", sep="|", index=False)

或者,您可以尝试以下方法:

def returncolumindex(val):
    i, j = np.where(df.values == val)
    return j[0]

df=df.applymap(lambda x: str(x).ljust(alist[returncolumindex(x)]))

相关问题 更多 >

    热门问题