如何将csv中一列中usr转换成0,sys转换成1,其余的删除用pandas
时间: 2024-04-17 08:27:01 浏览: 74
使用pandas库可以很方便地实现将CSV文件中的一列数据进行转换,并删除其他不需要的数据。下面是一个示例代码:
```python
import pandas as pd
# 读取CSV文件
df = pd.read_csv('input.csv')
# 创建映射字典
mapping = {'usr': 0, 'sys': 1}
# 将一列数据进行转换
df['column_name'] = df['column_name'].map(mapping)
# 删除其他不需要的数据
df = df.dropna(subset=['column_name'])
# 保存结果到新的CSV文件
df.to_csv('output.csv', index=False)
```
在上述代码中,首先使用`pd.read_csv()`函数读取CSV文件并将其存储为一个DataFrame对象`df`。然后,创建一个映射字典`mapping`,将'usr'映射为0,将'sys'映射为1。
接下来,使用`map()`函数将DataFrame对象中的指定列(`column_name`)中的值根据映射字典进行转换。这将把'usr'转换为0,'sys'转换为1。
然后,使用`dropna()`函数删除在转换后为空的行,以删除其他不需要的数据。
最后,使用`to_csv()`函数将结果保存到一个新的CSV文件中(例如`output.csv`)。设置`index=False`可以避免将索引写入CSV文件。
请注意,需要将代码中的`column_name`替换为实际要转换的列名。另外,如果需要转换多列,可以相应地扩展映射字典和转换操作。
阅读全文