如何使用Python按列值过滤数据集:筛选iPhone用户示例
筛选数据集中使用iPhone的用户记录
嘿,这事儿好办!用Python筛选特定列的记录有几种常用方法,根据你的数据形式选就行~
方法1:原生Python列表处理(适合小型数据集)
如果你的数据是以列表形式存储的,比如:
data = [ ["Name", "Age", "Phone_Type"], ["Joun", 25, "iPhone"], ["Alex", 20, "Samsung"], ["Sam", 60, "Nokia"], ["David", 30, "iPhone"] ]
可以用列表推导式快速筛选:
# 分离表头和数据行 header = data[0] user_rows = data[1:] # 筛选Phone_Type为iPhone的记录 iphone_users = [header] + [row for row in user_rows if row[2] == "iPhone"] # 按你要的格式打印结果 for row in iphone_users: print(f"{row[0]} .... {row[1]} ......... {row[2]}")
运行后就会输出你预期的结果。
方法2:用pandas处理(适合大型/结构化数据集)
如果数据量较大或者是从CSV/Excel导入的,用pandas会更高效简洁。先确保安装了pandas:
pip install pandas
然后编写代码:
import pandas as pd # 构造数据集(如果是从文件导入可以用pd.read_csv/pd.read_excel) df = pd.DataFrame({ "Name": ["Joun", "Alex", "Sam", "David"], "Age": [25, 20, 60, 30], "Phone_Type": ["iPhone", "Samsung", "Nokia", "iPhone"] }) # 筛选Phone_Type等于iPhone的行 iphone_df = df[df["Phone_Type"] == "iPhone"] # 按示例格式输出 for _, row in iphone_df.iterrows(): print(f"{row['Name']} .... {row['Age']} ......... {row['Phone_Type']}")
执行后得到的结果就是:
Joun .... 25 ......... iPhone
David ...30........ iPhone
内容的提问来源于stack exchange,提问作者Jamie
相关产品推荐
相关产品推荐

