在pandas中读取csv上的数据

时间:2017-04-11 15:44:02

标签: python pandas

我正在将.csv文件读入pandas数据帧。 .csv文件包含多个列。专栏' A'包含一个字符串' 20-989-98766'。是否可以只阅读最后5个字符' 98766'从加载文件时的字符串?

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

输出:

A
98766
95476
.....

1 个答案:

答案 0 :(得分:6)

您可以定义func并将其作为read_csvconverters参数的arg传递:

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并以dict的形式将其传递给converters,并以列名作为键,这将在您的每一行调用func CSV

所以在你的情况下,以下应该有效:

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