python-3.x - 如何从 Pandas 中的所有 DataFrame 中获取所有项目
问题描述
我有这个问题,mt Dataframe 中的所有行都包含多个项目。我想遍历整个 Dataframe 并将每个行项附加到一个新列表中,但我现在不确定如何执行此操作。
IPs
0 [172.16.254.1, 192.168.1.15, 255.255.255.0]
1 [192.0.2.1, 255.255.255.0, 192.0.2.1]
2 [172.16.254.1]
3 [0.0.0.0]
这是我当前的输出 - 我想获取数据框中每行的每个项目并附加到列表中
curled_ips_list = []
ip_addresses_found = []
ip_address_format = (r'\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b')
with open(website_file_path, 'r', encoding='utf-8-sig') as curled_ips_file:
found_ips_reader = pd.read_csv(curled_ips_file, names=['IPs'], delimiter='\n', quoting=csv.QUOTE_NONE, engine='c')
found_ips_reader = pd.Series(found_ips_reader['IPs'])
curled_ips_list = found_ips_reader[found_ips_reader.str.contains(ip_address_format)]
curled_ips_list = curled_ips_list.str.findall(ip_address_format)
curled_ips_list = pd.DataFrame(curled_ips_list)
curled_ips_file.close()
尚未收到任何错误消息,但不确定如何处理
解决方案
由于您没有提到您需要的输出,我假设您需要以下内容。
#Load your IPs in a dataframe as the one that you have mentioned above.
iplist = df['IPs']
[ip for sublist in iplist for ip in sublist]
['172.16.254.1',
'192.168.1.15',
'255.255.255.0',
'192.0.2.1',
'255.255.255.0',
'192.0.2.1',
'172.16.254.1',
'0.0.0.0']
推荐阅读
- javascript - 我需要帮助来修复表单中的空白电子邮件
- vue.js - Electron-Vue 应用程序的状态存储在哪里?
- c# - WCF 客户端 P12 证书问题 - 无法解析用于验证签名的 KeyInfo:KeyInfo 'SecurityKeyIdentifier'
- laravel - 如何使用 Datatables Yajra 在 Laravel 上下载文件
- javascript - 渲染进程的electron crashed事件触发太晚?
- c - 将字符串存储在 C 结构中
- google-apps-script - GOOGLE SHEETS : 测试单元格颜色和输出值
- javascript - 如何禁用 Ctrl+P 和 Ctrl+S?在 ng2-pdfjs-viewer 中。现在任何人都可以使用密钥打印或下载。任何建议将不胜感激
- javascript - 如何根据起始字母过滤数组
- java - 我做错了什么导致此图表滚动不正确?