【发布时间】:2022-11-25 05:40:51
【问题描述】:
我的公司要求我使用以下输出布局说明创建并写入文本文件:
| Record | Character Length | Type | Position on File |
|---|---|---|---|
| Record-Type | 1 | Num | 1 |
| ID | 12 | Char | 2-13 |
| Surname | 12 | Char | 14-25 |
| FirstName | 7 | Char | 26-32 |
| Middle Initial | 1 | Char | 33 |
| Gender | 1 | Char | 34 |
| Birth Date | 8 | Num | 35-42 |
我在 DataFrame 上创建了它,我想通过将列连接成单行来将它传输到文件中。既然我已经用 Pandas 编写了代码,我该如何继续:
df['Record type']=df['Record type'].str.ljust(1, " ")
df['ID']=df['ID'].str.rjust(13, ' ')
df['SURNAME']=df['SURNAME'].str.ljust(12, ' ')
df['FIRSTNAME']=df['FIRSTNAME'].str.ljust(7, ' ')
df['MIDDLEINITIAL']=df['MIDDLEINITIAL'].str.rjust(1, " ").replace(np.nan, ' ')
df['GENDER']=df['GENDER'].str.rjust(1, ' ')
df['BIRTHDATE']=df['BIRTHDATE'].str.rjust(8, "0")
我创建了一个数据框来保存数据并在划桨时将其作为单列移入文本文件。
df["report"] = df["Record type"].astype(str) + df["ID"].astype(str) + df['SURNAME'].astype(str) + df['FIRSTNAME'].astype(str) + df['MIDDLEINITIAL']+ df['GENDER'].astype(str) + df['BIRTHDATE'].astype(str)
【问题讨论】:
-
你是什么意思“划桨时”?你可以试试
np.savetxt("file.txt", df.values, fmt="%s", delimiter="")。或者通过string = "\n".join(df.apply("".join, axis=1))构建一个字符串并将其写入文件。