2017-04-11 60 views
3

我正在讀取一個.csv文件到一個熊貓數據框中。 .csv文件包含多個列。列'A'包含一個字符串'20 -989-98766'。加載文件時是否可以只讀取字符串中最後5個字符'98766'?轉換關於讀熊貓的csv的數據

df = pd.read_csv("test_data2.csv", column={'A':read the last 5 characters}) 

輸出:

A 
98766 
95476 
..... 

回答

4

您可以定義func,並通過此作爲對Arg的converters參數有關read_csv

In [57]: 
import io 
import pandas as pd 
def func(x): 
    return x[-5:] 
t="""column 
'20-989-98766""" 
df = pd.read_csv(io.StringIO(t), converters={'column': func}) 
df 

​ 
Out[57]: 
    column 
0 98766 

所以在這裏我定義了一個func,並通過這converters以字典的形式將列名稱作爲關鍵字,這將在您的每行上調用func CSV

所以你的情況下面應該工作:

df = pd.read_csv("test_data2.csv", converters={'A':func})