2016-10-26 2 views
0

私はXLSXファイルに次のテーブルを持っている:ここではsep= " | " を使用して列を分離しようとしているsep = in python pandasを使用して列を分割するにはどうすればよいですか?

emp_num | Name | Salary 
551234 | Joe | 5000 
551234 | Dan | 5001 
551234 | James | 5002 
551234 | Li | 5003 
551234 | Suzi | 5004 

Imが私のコードです:

df = pd.read_excel('I21.xlsx', sep=' | ', header=None) 

私は何を得るのコードにこれを実行した後: 私はheader=Noneを使用して、1つの列しかないことをより明確に示しています。

      0 
0 emp_num | Name | Salary 
1  551234 | Joe | 5000 
2  551234 | Dan | 5001 
3 551234 | James | 5002 
4  551234 | Li | 5003 

答えて

0

sep = "|"でcsvファイルとして読むことができます。

また、セパレータ "|"でExcelに読み込むこともできます。複数の列があります。

read_excelにはsepパラメータがありません。

1

次のようにあなたがsepパラメータは、正規表現を受け入れることを覚えておいて、read_csv()を使用することができます。

9月:STR、デフォルトを '' 区切り文字に使用します。 sepがNoneの場合、自動的に と判断します。 1文字より長く、 '\ s +'とは異なるセパレータは が正規表現として解釈され、 エンジンを解析するpythonを強制的に使用し、データの引用符は無視します。正規表現の例:そう|\でエスケープする必要があります

'\ rをする\ tの'、それ以外の場合は、正規表現のパターンのorとして解釈されます。

import pandas as pd 
from io import StringIO 

pd.read_csv(StringIO("""emp_num | Name | Salary 
551234 | Joe | 5000 
551234 | Dan | 5001 
551234 | James | 5002 
551234 | Li | 5003 
551234 | Suzi | 5004"""), sep = " \| ") 

enter image description here

1

することができます"parse"のように使用する

import pandas as pd 
xls_file = pd.ExcelFile('file path') 
df = xls_file.parse('Sheet1') 

出力:

emp_num Name Salary 
0 551234 Joe 5000 
1 551234 Dan 5001 
2 551234 James 5002 
3 551234  Li 5003 
4 551234 Suzi 5004 
関連する問題