python - 如何在熊猫中读取带有空单元格的漂亮打印表格?
问题描述
假设我有一张这样的桌子
INDEX COL_A COL_B
1 Yes 6
2 No 7
3 Yes 6
我可以用
import pandas as pd
df = pd.read_table('table', delimiter='\s\s+')
正如这里建议的那样https://stackoverflow.com/a/43225248/3014199。但这假设没有空单元格。如果缺少(最后)B 列中的一个单元格,我很幸运,并且该单元格被填满,None
但是如果 A 列中的一个单元格为空,则它右侧的所有单元格都向左移动一个单元格,并且None
位于 B 列中再次。
我可以手动执行此操作,从标题中推断切片索引,然后df
从列表列表中手动构建一个,但我想知道是否可以使用 pandas 来完成。
更新:
df = pd.read_fwf('table', index_col=0)
成功了!
解决方案
Pandas 有一个固定宽度格式行的功能,所以也许你可以使用它?从文件中读取它的工作...
“table.txt”包含:
INDEX COL_A COL_B
1 YES 6
2 7
3 Yes
Python代码
import pandas as pd
df = pd.read_fwf('table.txt')
数据框(df):
INDEX COL_A COL_B
0 1 YES 6.0
1 2 NaN 7.0
2 3 Yes NaN
您还可以使用 'index_col' 参数将 'INDEX' 设置为索引。文档:pandas.read_fwf
推荐阅读
- makefile - 一个先决条件中的目标数量未知?
- ios - ReplayKit2 - 直接从应用程序开始广播
- sql - 如何在 SQL/PostgreSQL 中的两列中获取 MAX 值
- mysql - 快速会话和 MySQL
- postgresql - 从 .csv 导入表时出错 - Postgres - AWS-RDS
- git - 带有用户名和密码的 git clone,我的密码中有“@”
- vue.js - 如何在 vue js 中使用编辑选项
- python - 如何在 python 中以管理员身份进行身份验证、查询和变异 Hasura?
- powershell - 使用 PowerShell 删除 SharePoint Online 文件版本控制
- .net - ReactiveCommands - 以下解决方案是否等效?