gpt4 book ai didi

Python pandas 仅提取所需的列和列中的所需值

转载 作者:行者123 更新时间:2023-12-01 09:14:49 26 4
gpt4 key购买 nike

我正在尝试使用 pandas 解析我的 CSV 文件,其中我的 CSV 文件有多列,但我只需要选择某些列。从我的 CSV 文件中,我希望获取 'Platform ID' ,它可能以 CS-Unix* 开头,下一个是 '目标系统地址' >其中包含服务器名称,可以是任何内容,因此我需要将整个值打印出来,最后一列是“失败原因”,这又是一个症状,可以是任何内容,因此需要打印。

我提到了 CS-Unix-* ,因为它可以是 CS-Unix- 之后的任何内容但是,在另一个字段中,我选择 * 打印该值,因为服务器名称可能再次不同。

我的数据格式将是..

Platform ID               Target system address       Failure reason
CS-Unix-RootAccounts-SSH Serer1 xyz

低于我正在尝试但不起作用的内容。

import csv
import pandas as pd

pd.set_option('display.height', None)
pd.set_option('display.max_rows', None)
pd.set_option('display.max_columns', None)
pd.set_option('display.width', None)

data = pd.read_csv('/home/karn/plura/Test/Python_Pnada/Cyber_July.csv', usecols=['Platform ID', 'Target system address', 'Failure reason'])
#data.drop(data.index[0], inplace=True)
hostnames = data[(data['Platform ID']=='CDS-Unix-*') | (data['Target system address'] == '*' )]['Failure reason']
print(hostnames)

请指引前进。

最佳答案

这应该为具有 CS-Unix-* 形式的平台 ID 的所有行提供失败原因。

hostnames = data[data['平台ID'].str.startswith("CS-Unix-")][['目标系统地址','失败原因']]

startswith()返回一个 bool 值,指示以字符串开头的元素是否作为参数传递给它。

关于Python pandas 仅提取所需的列和列中的所需值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51354400/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com