[英]how to copy some csv file colums into another csv file with python?
[英]Copy and append colums from one csv to another csv file using python
我有两个 CSV 文件。 让它们成为source.csv
和dest.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.