【发布时间】:2018-08-29 16:57:13
【问题描述】:
我正在尝试使用 Python3 和 Pandas 来塑造数据框。
我当前的框架是这样的:
<style type="text/css">
.tg {border-collapse:collapse;border-spacing:0;}
.tg td{font-family:Arial, sans-serif;font-size:14px;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;}
.tg th{font-family:Arial, sans-serif;font-size:14px;font-weight:normal;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;}
.tg .tg-baqh{text-align:center;vertical-align:top}
</style>
<table class="tg">
<tr>
<th class="tg-baqh"></th>
<th class="tg-baqh">Col1</th>
<th class="tg-baqh">Col2</th>
<th class="tg-baqh">Col3</th>
</tr>
<tr>
<td class="tg-baqh">0</td>
<td class="tg-baqh">X</td>
<td class="tg-baqh">Y</td>
<td class="tg-baqh"></td>
</tr>
<tr>
<td class="tg-baqh">1</td>
<td class="tg-baqh"></td>
<td class="tg-baqh">Z</td>
<td class="tg-baqh">B</td>
</tr>
</table>
如果第二列为空白,我将尝试删除该行(因此仅在此处删除第 2 行,索引 1),但第二列的名称可能会根据正在使用的文件而更改,因此我尝试使用 ix但无济于事...
c = df.ix[:,1]
df.dropna(subset=c, how='all', inplace=True)
有什么建议吗?
【问题讨论】:
-
我很困惑,第 2 行的第二列怎么是空白的?
-
看看coldspeed之前的回答:stackoverflow.com/questions/46864740/…。这很棒!结合 dropNa 和子集。
-
子集的文档给出了-“子集:要考虑的沿其他轴的类数组标签,例如,如果您要删除行,这些将是要包含的列列表”。简单地说,
df.dropna(subset=['Col2'], how='all', inplace=True) -
@anonyXmous 哇,谢谢 :)
-
@coldspeed:对不起,我把第一行算作第 0 行只是为了混淆。索引号 1 是我需要删除的行。