Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用Pandas从csv文件中删除特定行之前的行,该行基于该行中的值_Python_Linux_Pandas_Csv - Fatal编程技术网

Python 使用Pandas从csv文件中删除特定行之前的行,该行基于该行中的值

Python 使用Pandas从csv文件中删除特定行之前的行,该行基于该行中的值,python,linux,pandas,csv,Python,Linux,Pandas,Csv,我有一个csv文件,如下所示。我想删除一行值[Station Mac,First time seen,Last time seen,Power,packets,BSSID,Prospected Essid]之前的所有行以进行进一步处理。我正在使用python中的panadad libarary读取此csv文件。我可以通过索引删除特定的行,但我的文件在fes秒后重新加载,行索引可以更改。我该怎么做呢。 谢谢你的帮助 BSSID,第一次看到,最后一次看到,通道,速度,隐私,密码,身份验证,电源,#信

我有一个csv文件,如下所示。我想删除一行值[Station Mac,First time seen,Last time seen,Power,packets,BSSID,Prospected Essid]之前的所有行以进行进一步处理。我正在使用python中的panadad libarary读取此csv文件。我可以通过索引删除特定的行,但我的文件在fes秒后重新加载,行索引可以更改。我该怎么做呢。 谢谢你的帮助

BSSID,第一次看到,最后一次看到,通道,速度,隐私,密码,身份验证,电源,#信标,#IV,LAN IP,ID长度,ESSID,密钥
52:62:00:00:03:01, 2018-06-22 11:23:45, 2018-06-22 11:23:45,  9,  -1, ,   ,  -1,        0,        0,   0.  000,   0, 
14:30:04:B2:F5:422018-06-22 11:24:042018-06-22 11:24:0411-1,WPA,,-88,0,1,0。000,   0, 
14:30:04:D6C:95:622018-06-22 11:23:502018-06-22 11:24:08,6,-1,WPA,,-85,0,2,0。000,   0, 
DC:09:4C:BF:6B:132018-06-2211:23:582018-06-2211:24:06,7,54,WPA2,CCMP,PSK,-75,2,0,0。000,12,死亡中风,
B4:FB:N4:97:F8:032018-06-22 11:23:462018-06-22 11:24:12,6,54,WPA2,CCMP,PSK,-74,6,6,0。000,3,CSE,
C4:A8:1D:9K:B9:E8,2018-06-22 11:23:572018-06-22 11:24:12,11,22,WPA2 WPA,CCMP TKIP,PSK,-71,1,1,0。000、20、SE-IX(仅限教员),
78:8A:90:81:C1:312018-06-22 11:23:542018-06-22 11:24:06,6,54,WPA2,CCMP,PSK,-71,4,0,0。000,3,CSE,
78:8A:20:49:^9:D1,2018-06-22 11:23:442018-06-22 11:24:12,11,54,WPA2,CCMP,PSK,-41,58,21,0。000,3,CSE,
14:30:04:B3:FD:A22018-06-22 11:23:462018-06-22 11:24:12,6-1,1,1,0,0。000,   0, 
14:30:KL:B3:52:222018-06-2211:23:472018-06-2211:24:12,2,-1,WPA,,-1,0,50,0。000,   0, 
14:30:04:LC:9B:E22018-06-22 11:23:482018-06-22 11:24:01,3,-1,,,-1,0,0。000,   0, 
14:U0:04:B3:52:622018-06-22 11:23:492018-06-22 11:24:12,11,-1,WPA,,-1,0,92,0。000,   0, 
站点MAC,第一次看到,最后一次看到,电源,#数据包,BSSID,探测的ESSID
MacAddressrees,2018-06-22 11:23:452018-06-22 11:23:45,-78,8,52:62:90:00:03:01,
macaddress,2018-06-22 11:23:462018-06-22 11:24:05,-73,4,14:30:04:BB:19:A2,
macaddress,2018-06-22 11:23:522018-06-22 11:24:12,-73,5,(未关联),
macaddress,2018-06-22 11:23:432018-06-22 11:24:12,-71,9,不相关,
macadress,2018-06-22 11:23:522018-06-22 11:23:52,-70,2,(未关联),
macaddress,2018-06-22 11:23:482018-06-22 11:24:01,-69,11,NAN,
macaddress,2018-06-22 11:23:462018-06-22 11:24:12,-65,15,NAN,
macaddress,2018-06-22 11:24:12018-06-22 11:24:12,-62,2,(未关联),
macaddress,2018-06-22 11:24:012018-06-22 11:24:12,-54,2,NAN,
macaddress,2018-06-22 11:23:492018-06-22 11:24:12,-4897Nan,
macaddress,2018-06-22 11:23:432018-06-22 11:24:12,-35,54,南,UET智能大学
macaddress,2018-06-22 11:23:472018-06-22 11:24:03,-23108,NAN,
macaddress,2018-06-22 11:23:492018-06-22 11:23:49,-1,9,NAN,

我们可以读取文件,然后
将其拆分为带有两个字符串的列表
s
,一个字符串在空行之前(使用
\n\n
作为分隔符),另一个字符串在空行之后。完成后,我们可以将这些字符串作为CSV读取到单独的数据帧中:

with open('test.csv') as f:
    s = f.read().split('\n\n')

df1 = pd.read_csv(pd.compat.StringIO(s[0]))
df2 = pd.read_csv(pd.compat.StringIO(s[1]))
df1:

df2:


如果您使用的文件中在Station Mac之前的行数一致,并且您知道有多少行,则可以使用pandas read_csv跳过这些行

df1=pd.read\u csv('filename.csv',skiprows=14)


其中14(仅计算站点Mac前的行数)是要跳过的行数。您还可以使用列表而不是整数来指定要跳过的行。

Hello!“我的文件在几秒钟后重新加载”是什么意思?通常,文件不会自行重新加载。你到底想做什么?我正在从linux命令生成我的CSV文件,因为运行命令文件本身会改变。很难说你的代码有什么问题,因为你没有提供它或者你遇到了什么错误。另见。
                BSSID       First time seen        Last time seen   channel  \
0   52:62:00:00:03:01   2018-06-22 11:23:45   2018-06-22 11:23:45         9   
1   14:30:04:B2:F5:42   2018-06-22 11:24:04   2018-06-22 11:24:04        11   
2  14:30:04:D6C:95:62   2018-06-22 11:23:50   2018-06-22 11:24:08         6   
3   DC:09:4C:BF:6B:13   2018-06-22 11:23:58   2018-06-22 11:24:06         7   
4   B4:FB:N4:97:F8:03   2018-06-22 11:23:46   2018-06-22 11:24:12         6   
...
  Station MAC       First time seen        Last time seen   Power   # packets  \
0  macaddrees   2018-06-22 11:23:45   2018-06-22 11:23:45     -78           8   
1  macaddress   2018-06-22 11:23:46   2018-06-22 11:24:05     -73           4   
2  macaddress   2018-06-22 11:23:52   2018-06-22 11:24:12     -73           5   
3  macaddress   2018-06-22 11:23:43   2018-06-22 11:24:12     -71           9   
4   macadress   2018-06-22 11:23:52   2018-06-22 11:23:52     -70           2