繁体   English   中英

使用 python 将列从一个 csv 复制并附加到另一个 csv 文件

[英]Copy and append colums from one csv to another csv file using python

我有两个 CSV 文件。 让它们成为source.csvdest.csv


来源.csv:

  A B C D
  1 3 6 3
  1 4 3 1
  2 4 1 6
  1 3 5 7

目的地.csv:

  E F G H
  1 3 5 2
  1 3 4 2
  1 5 2 4
  1 3 5 2

我正在尝试从source.csv复制第 B 列并将其附加到dest.csv dest.csv像这样

目的地.csv:

  E F B G H
  1 3 3 5 2
  1 3 4 4 2
  1 5 4 2 4
  1 3 3 5 2

非常感谢您提供的任何帮助。

首先,您需要读取文件,然后插入列,最后将 df 保存为新的 csv 文件:

import pandas as pd

df_source = pd.read_csv('source.csv')
df_dest = pd.read_csv('dest.csv')

df_dest.insert(2,'B',df_source['B']) #This modifies df_dest in place.

df_dest.to_csv('dest_output.csv)

请注意,这仅在两个文件(源文件和目标文件)都位于您运行脚本的同一位置时才有效。 如果不是,请在使用 read_csv 方法读取时提供完整路径。 (即: read_csv('PATH) )。

我得到了答案。!!

def patch(count_of_files):
stitch_key = "BatchOutput_" + str(count_of_files)
files_name = []
for files in os.listdir(directory):  # Loping through directory and taking each files to add to files_name
    if stitch_key in files:
        files_name.append(files)
df = pd.read_csv(directory+"/"+files_name[0], index_col=False)
for i in files_name:
    if i == files_name[0]:  # continuing loop for first file
        continue
    df_temp = pd.read_csv(directory+"/"+i, index_col=False)
    columns_name = df_temp.columns.values.tolist()  # taking all column names into a list
    columns_name = columns_name[7:10]
    percentile_0 = df_temp.iloc[:, [7]]
    percentile_1 = df_temp.iloc[:, [8]]
    percentile_2 = df_temp.iloc[:, [9]]
    df.insert(7, columns_name[0], percentile_0,allow_duplicates=True)  # inserting percentiles into dataframe
    df.insert(7, columns_name[1], percentile_1,allow_duplicates=True)
    df.insert(7, columns_name[2], percentile_2,allow_duplicates=True)
df.to_csv(directory+"/"+files_name[0], index=False)  # converting the dataframe into output csv
for files in files_name:
    if files == files_name[0]:
        continue
    os.remove(directory+"/"+files)

暂无
暂无

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

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