Python 从csv中删除特定列中包含非数字内容的行

Python 从csv中删除特定列中包含非数字内容的行,python,csv,conditional,Python,Csv,Conditional,以下是我的测试数据(csv格式): 目标是消除字符串为user\u id的所有行。我想知道如何测试与某个列对应的每一行的内容是否是字符串。它可以是任何字符串 我已经在编写代码方面迈出了一小步,但我必须承认我不知道如何继续编写if部分 import csv reader = csv.reader(open("file.csv", "rb"), delimiter=",", quotechar='"') for line in reader: if ##column 'user_id' is

以下是我的测试数据(csv格式):

目标是消除字符串为
user\u id
的所有行。我想知道如何测试与某个列对应的每一行的内容是否是字符串。它可以是任何字符串

我已经在编写代码方面迈出了一小步,但我必须承认我不知道如何继续编写
if
部分

import csv
reader = csv.reader(open("file.csv", "rb"), delimiter=",", quotechar='"')
for line in reader:
    if ##column 'user_id' is not a string##
        print line
任何提示都将不胜感激。

您可以使用它来测试字符串是否只包含数字:

if line[1].isdigit():
    # all digits
filtered_df = df[df['user_id'].apply(lambda x: str(x).isdigit())]
演示:

您可以使用测试字符串是否仅包含数字:

if line[1].isdigit():
    # all digits
filtered_df = df[df['user_id'].apply(lambda x: str(x).isdigit())]
演示:


此解决方案使用Pandas库。我将进行如下工作

import pandas as pd
df = pd.read(your_file)
从您提供的字符串中选择:

导入StringIO df=pd.read\u csv(StringIO.StringIO(您的csf文件作为字符串))

df包含一个包含所有数据的数据帧:

   id     user_id  value
0   1        1001    111
1   2        1002    222
2   3  h82kn9;2&3    333
3   4  jsidofj882    444
现在是筛选,我们选择感兴趣的列(用户id)并通过选择仅包含数字的字符串进行筛选:

if line[1].isdigit():
    # all digits
filtered_df = df[df['user_id'].apply(lambda x: str(x).isdigit())]
过滤的_df只包含预期的前2行:

   id user_id  value
0   1    1001    111
1   2    1002    222

此解决方案使用Pandas库。我将进行如下工作

import pandas as pd
df = pd.read(your_file)
从您提供的字符串中选择:

导入StringIO df=pd.read\u csv(StringIO.StringIO(您的csf文件作为字符串))

df包含一个包含所有数据的数据帧:

   id     user_id  value
0   1        1001    111
1   2        1002    222
2   3  h82kn9;2&3    333
3   4  jsidofj882    444
现在是筛选,我们选择感兴趣的列(用户id)并通过选择仅包含数字的字符串进行筛选:

if line[1].isdigit():
    # all digits
filtered_df = df[df['user_id'].apply(lambda x: str(x).isdigit())]
过滤的_df只包含预期的前2行:

   id user_id  value
0   1    1001    111
1   2    1002    222

Python说
type(“1000”)
,你是说数字与字母的字符串吗?是的,对不起,我的意思是我只想保留所有数字的
用户id。Python说
type(“1000”)
,你是指数字与字母的字符串吗?是的,对不起,我的意思是我只想保留所有数字的
用户id
。这也很优雅,我不知道熊猫图书馆。谢谢你的建议!这也很优雅,我不知道熊猫图书馆。谢谢你的建议!