繁体   English   中英

迭代列表

[英]Iterate over list

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 的行数。

您需要拆分行并将每个值转换为整数。 目前您正在寻找字符串“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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM