繁体   English   中英

如何使用python更新基于同一csv文件中其他列单元格的列单元格中的值?

[英]How to update value in column cells based on other column cells in the same csv file bys using python?

假设我在一个csv文件中有一个大数据:

frame.number    frame.len   frame.cap_len   frame.Type  
  1               100           100           ICMP  
  2                64            64           UDP   
  3               100           100           ICMP  
  4                87            64           ICMP  

我想根据其长度更改框架的类型。 第一个问题是我不知道如何提取列的等级,然后像这样更改框架类型:

if frame.len==100 then it puts frame.type=ICMP_tt else if frame.len==87 then it puts frame.type=ICMP_nn 

我希望它看起来像这样:

frame.number    frame.len   frame.cap_len   frame.Type  
  1               100           100           ICMP_tt   
  2                64            64           UDP   
  3               100           100           ICMP_tt   
  4                87            64           ICMP_nn

我尝试使用此代码,但未进行任何修改。

import pandas

df = pandas.read_csv('Test.csv')
if df['frame.len'] == 100:
    df['frame.type'].replace("ICMP_tt")

如果您能帮助我,我将不胜感激。

相似的问题: 如何有条件地更新Pandas中的DataFrame列

import pandas
df = pandas.read_csv('Test.csv')
df.loc[df['frame.len'] == 100, 'frame.Type'] = "ICMP_tt"
df.loc[df['frame.len'] == 87, 'frame.Type'] = "ICMP_nn"
df

结果: 在此处输入图片说明

应该做到的。 赋予df.loc[]的第一项是一个充满True / False值的数组,该值告诉它要更新哪些行(如果我df.loc[]话,还将接受单个数字作为行索引),第二项指定要更新的列。

暂无
暂无

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

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