尝试将包含特定字符串的数据移动到pandas

时间:2017-11-14 16:15:23

标签: python python-3.x pandas

我正在尝试将读取的.csv文件搜索到数据框中,在其中搜索包含字符串' DSCRPT'的数据。并将其移动到另一个数据框,然后合并它们,以便我有两列。 到目前为止我有这个:

import csv
import pandas as pd
data = pd.read_csv('ctgs_list_ETS3.2.csv', 'r', encoding='utf-8') 

data.rename(columns={0:'ID'}, inplace=True)
word = 'DSCRPT'

data1 = df.loc[data['ID'].str.contains(word, case=False)]
data1

但此时它崩溃了,我收到以下错误:

KeyError:' ID' 错误:迭代器应该返回字符串,而不是字节(你是否在文本模式下打开文件?)

任何帮助都会很棒。

编辑:

df = pd.read_csv(' ctgs_list_ETS3.2.csv',encoding =' utf-8')

df1 = df.iloc[:3000, :]
df2 = df.iloc[3000:, :]
df3 = pd.merge(df1, df2, left_index=True, right_index=True, how='outer')
df3

但是我得到的数据框看起来像这样:

__________________ Id_x___Id_y
27 ^ ID_CTG(28)=' INC2MAY1' NaN

28 ^ ID_CTG(29)=' INC2MAY2' NaN

29 ^ ID_CTG(30)=' INC2PB_1' NaN

... ......

5970 NaN ^ DSCRPT_CTG(2971)=' '

5971 NaN ^ DSCRPT_CTG(2972)=' '

5972 NaN ^ DSCRPT_CTG(2973)=' '

如何摆脱NaN值?

0 个答案:

没有答案