![](/img/trans.png)
[英]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.