迭代列表。

Q6

4;99

3;4;8;9;14;18

2;3;8;12;18

2;3;11;18

2;3;8;18

2;3;4;5;6;7;8;9;11;12;15;16;17;18

2;3;4;8;9;10;11;13;18

1;3;4;5;6;7;13;16;17

2;3;4;5;6;7;8;9;11;12;14;15;18

3;11;18

2;3;5;8;9;11;12;13;15;16;17;18

2;5;11;18

1;2;3;4;5;8;9;11;17;18

3;7;8;11;13;14

2;3;8;18

2;13

2;3;5;8;9;11;12;13;18

2;3;4;9;11;12;18

2;3;5;9;11;18

1;2;3;4;5;6;7;8;9;11;14;15;16;17;18

2;3;8;11;13;18


import pandas as pd 

df_1 = pd.read_csv('amazon_final 29082018.csv') 

list_6 = list(df_1["Q6"]) 

list_6 = list(map(str, list_6)) 

list_7 = list(zip(list_6)) 

tem_list = [] 

for x in list_6: 

    if ('3' in x[0]): 

        tem_list.append('Fire') 

    else: 

        tem_list.append(None) 

df_1.to_csv('final.csv', index=False)

我在数据中有很多这样的列。我想从中提取值“3”,我写的代码给了我 3 个值以及 13,23,33 等等。我只想要值为 3 的行数。


神不在的星期二
浏览 138回答 1
1回答

至尊宝的传说

您需要拆分行并将每个值转换为整数。目前您正在寻找字符串“3”的存在,这就是像“2;13”这样的字符串通过测试的原因。尝试这样的事情:list_6 = ["4;99", "3;4;8;9;14;18", "2;3;8;12;18", "2;3;11;18", "2;3;8;18",     "2;3;4;5;6;7;8;9;11;12;15;16;17;18", "2;3;4;8;9;10;11;13;18",     "1;3;4;5;6;7;13;16;17", "2;3;4;5;6;7;8;9;11;12;14;15;18", "3;11;18",     "2;3;5;8;9;11;12;13;15;16;17;18", "2;5;11;18", "1;2;3;4;5;8;9;11;17;18",     "3;7;8;11;13;14", "2;3;8;18", "2;13", "2;3;5;8;9;11;12;13;18",     "2;3;4;9;11;12;18", "2;3;5;9;11;18",     "1;2;3;4;5;6;7;8;9;11;14;15;16;17;18", "2;3;8;11;13;18"]temp_list = [] for x in list_6:     numbers = [int(num_string) for num_string in x.split(';')]    if (3 in numbers):         temp_list.append('Fire')     else:         temp_list.append('None') print(temp_list)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python