说我有一个这样的桌子
foreach ($this->CollectionArray as $row) {
echo'<tr>';
echo'<td>'.$row->number.'</td>';
echo'<td>'.$row->date.'</td>';
}
我可以用
阅读INDEX COL_A COL_B
1 Yes 6
2 No 7
3 Yes 6
如此处https://stackoverflow.com/a/43225248/3014199所示。
但这是假设没有空单元格。如果缺少(最后一个)列B中的一个单元,我很幸运,并且该单元充满了import pandas as pd
df = pd.read_table('table', delimiter='\s\s+')
,但是如果列A中的一个单元为空,则它右边的所有单元都向左移动一个单元, None
再次位于B列中。
我可以手动执行此操作,从页眉推断要切片的索引,然后从列表列表中手动构建None
,但我想知道是否可以使用熊猫来完成。
更新:
df
可以解决问题!
答案 0 :(得分:2)
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')
DataFrame(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