python提取csv指定列
时间: 2023-09-22 14:06:58 浏览: 76
可以使用Python的pandas库来提取csv文件中的指定列。首先需要导入pandas库,然后使用read_csv()函数读取csv文件。接着使用iloc()函数指定要提取的列,例如,提取第2列和第3列可以使用如下代码:
```
import pandas as pd
# 读取csv文件
data = pd.read_csv('file.csv')
# 提取第2列和第3列
cols = data.iloc[:, [1, 2]]
```
其中"file.csv"为要读取的csv文件名,[1, 2]表示要提取第2列和第3列。最后,可以使用cols变量来访问提取的列数据。
相关问题
python提取csv文件指定列到另一个csv文件中
可以使用Python中的csv模块来提取csv文件指定列到另一个csv文件中。下面是一个示例代码:
```python
import csv
# 指定要提取的列索引
columns_to_extract = [0, 2, 4]
# 打开要读取的csv文件
with open('input.csv', 'r') as input_file:
reader = csv.reader(input_file)
# 打开要写入的csv文件
with open('output.csv', 'w', newline='') as output_file:
writer = csv.writer(output_file)
# 遍历每一行数据
for row in reader:
# 提取指定列的数据
extracted_data = [row[i] for i in columns_to_extract]
# 将提取的数据写入新的csv文件中
writer.writerow(extracted_data)
```
在上面的示例代码中,我们指定了要提取的列索引,然后打开要读取的csv文件并遍历每一行数据,提取指定列的数据并将其写入新的csv文件中。注意要使用`newline=''`来避免写入csv文件时出现空行。
python保存csv指定列
要保存 CSV 文件的指定列,你可以使用 Python 的 csv 模块。下面是一个简单的示例代码,展示了如何实现这一功能:
```python
import csv
def save_selected_columns(input_file, output_file, selected_columns):
with open(input_file, 'r') as file:
reader = csv.reader(file)
header = next(reader)
selected_indices = [header.index(col) for col in selected_columns]
with open(output_file, 'w', newline='') as outfile:
writer = csv.writer(outfile)
writer.writerow(selected_columns)
for row in reader:
selected_row = [row[idx] for idx in selected_indices]
writer.writerow(selected_row)
# 示例使用
input_file = 'input.csv'
output_file = 'output.csv'
selected_columns = ['Column1', 'Column3']
save_selected_columns(input_file, output_file, selected_columns)
```
上述代码中,`save_selected_columns` 函数接受三个参数:`input_file` 是输入 CSV 文件的路径,`output_file` 是保存选定列的 CSV 文件的路径,`selected_columns` 是一个包含要保留的列名的列表。
函数首先打开输入文件,并使用 `csv.reader` 对其进行迭代。通过 `next(reader)` 读取文件的首行,即表头,并使用 `header.index(col)` 获取每个选定列的索引。
接下来,函数打开输出文件,并使用 `csv.writer` 来写入选定列。首先,它使用 `writer.writerow(selected_columns)` 写入选定列的列名。然后,它迭代读取器对象,对于每一行,使用选定列的索引来提取相应的值,然后使用 `writer.writerow(selected_row)` 将这些值写入输出文件。
记得将示例中的 `input.csv` 替换为你的输入文件路径,将 `output.csv` 替换为你想要保存选定列的输出文件路径,以及将 `selected_columns` 替换为你想要保留的具体列名列表。
阅读全文