python实现将a.csv中的前15列数据与b.csv中的前15列数据拼接后生成30列数据的c.csv
时间: 2024-05-06 21:19:02 浏览: 12
可以使用Python中的pandas库来实现数据的拼接。下面是示例代码:
```python
import pandas as pd
# 读取a.csv和b.csv文件的前15列数据
a_data = pd.read_csv('a.csv', usecols=list(range(15)))
b_data = pd.read_csv('b.csv', usecols=list(range(15)))
# 将a.csv和b.csv的数据按列拼接
c_data = pd.concat([a_data, b_data], axis=1)
# 将拼接后的数据保存到c.csv文件中
c_data.to_csv('c.csv', index=False)
```
上述代码中,首先使用`pd.read_csv()`函数读取a.csv和b.csv文件的前15列数据,`usecols`参数指定要读取的列。然后使用`pd.concat()`函数按列拼接两个数据集,`axis=1`参数表示按列拼接。最后使用`to_csv()`函数将拼接后的数据保存到c.csv文件中,`index=False`参数表示不保存行索引。
相关问题
请写一段代码,使用python读取train.csv和output.csv并将train.csv的前三列与output.csv的第一列进行拼接,输出一个新的csv文件
以下是使用Python读取train.csv和output.csv,将train.csv的前三列与output.csv的第一列进行拼接,输出一个新的csv文件的代码:
```python
import csv
# 读取train.csv文件
with open('train.csv', 'r') as train_file:
train_reader = csv.reader(train_file)
train_data = [row[:3] for row in train_reader] # 取前三列数据
# 读取output.csv文件
with open('output.csv', 'r') as output_file:
output_reader = csv.reader(output_file)
output_data = [row[:1] for row in output_reader] # 取第一列数据
# 拼接数据
new_data = []
for i in range(len(train_data)):
new_row = train_data[i] + output_data[i]
new_data.append(new_row)
# 写入新的csv文件
with open('new_data.csv', 'w', newline='') as new_file:
writer = csv.writer(new_file)
for row in new_data:
writer.writerow(row)
```
其中,`csv.reader()`方法用于读取csv文件,`csv.writer()`方法用于写入csv文件。`newline=''`参数用于避免写入csv文件时出现空行。最后,使用`writerow()`方法将每一行写入新的csv文件中。
python 读取文件夹的所有csv文件,并且将文件里的第四列数据全部都拼接到一个变量里去 代码
可以使用以下代码实现:
```python
import os
import csv
csv_folder = "/path/to/csv/folder"
csv_files = [f for f in os.listdir(csv_folder) if f.endswith('.csv')]
data_list = []
for csv_file in csv_files:
with open(os.path.join(csv_folder, csv_file), 'r') as f:
csv_reader = csv.reader(f)
next(csv_reader) # skip header
for row in csv_reader:
data_list.append(row[3])
data = ''.join(data_list)
```
这段代码会读取指定文件夹下的所有 csv 文件,将每个文件中第四列的数据全部都拼接到 `data_list` 列表中,最后再使用 `join` 函数将列表中的所有字符串拼接成一个大字符串,保存在 `data` 变量中。