Pandas Dataframe中的空白列

时间:2015-07-07 11:19:17

标签: python pandas dataframe

转换为Pandas DataFrame时,如何忽略行中的最后一个空格?

我有以下格式的CSV文件:

Column #1   : Type
Column #2   : Total Length
Column #3   : Found
Column #4   : Grand Total

1;2;1;7.00;
2;32;2;0.76;
3;4;6;6.00;
4;1;5;4.00;

我遍历了#39;列#'首先创建我的列名称的行(所以4列),然后我解析以下行来使用&#39 ;;'来创建我的DataFrame。作为分隔符。但是我的一些文件包含一个尾随的&#39 ;;'在如上所示的每一行的末尾,所以我的Pandas DataFrame认为有一个包含空格的第5列,因此抛出一个错误,说没有指定足够的列名

Pandas中是否有机制在创建DataFrame时删除/忽略尾随&#39 ;;'或空格?我正在使用read_csv来创建DataFrame。

感谢。

1 个答案:

答案 0 :(得分:1)

只需传递usecols的参数:

In [160]:
t="""1;2;1;7.00;
2;32;2;0.76;
3;4;6;6.00;
4;1;5;4.00;"""
​import pandas as pd
import io
df = pd.read_csv(io.StringIO(t), sep=';', header=None, usecols=range(4))
df

Out[160]:
   0   1  2     3
0  1   2  1  7.00
1  2  32  2  0.76
2  3   4  6  6.00
3  4   1  5  4.00

在这里,我生成列表[0,1,2,3]以指示我感兴趣的列。