牛骨文教育服务平台(让学习变的简单)
博文笔记

pandas写入csv

创建时间:2018-01-23 投稿人: 浏览次数:1118
import pandas as pd
write_csv = "train.csv"
"""处理待存数据frame, xmin, xmax, ymin, ymax为list格式"""
column_frame = pd.Series(frame, name="frame")
column_xmin = pd.Series(xmin, name="xmin")
column_xmax = pd.Series(xmax, name="xmax")
column_ymin = pd.Series(ymin, name="ymin")
column_ymax = pd.Series(ymax, name="ymax")
column_classid = pd.Series(class_id, name="class_id")

save = pd.DataFrame({"frame":frame, "xmin":xmin, "xmax":xmax, "ymin":ymin, "ymax":ymax, "class_id":class_id})
save.to_csv(write_csv, index=False, sep=" ")  
"""上面这种方法,列的顺序和设定的不同"""

con = pd.concat([column_frame, column_xmin, column_xmax, column_ymin, column_ymax, column_classid], axis=1)
con.to_csv("train2.csv", index=False, sep=" ")
"""上面这种方法,列的顺序是固定的"""

删除指定包含指定行,参考1,参考2

import pandas as pd

csv_name = "all.csv"
new_name = "deleted_all.csv"
data = pd.read_csv(csv_name)
delete_img = ["F000_00027.jpg", "F000_00069.jpg", "F001_00048.jpg", "F003_00050.jpg",
              "F005_00050.jpg", "F007_00050.jpg", "F011_00050.jpg", "F013_00050.jpg",
              "F015_00050.jpg", "F017_00050.jpg", "F019_00050.jpg", "F027_00050.jpg",
              "F034_00060.jpg", "F036_00060.jpg", "F040_00060.jpg", "F042_00037.jpg",
              "F044_00060.jpg", "F048_00060.jpg", "F050_00037.jpg", "F054_00060.jpg"]
index = data[data["frame"].isin(delete_img)].index   #返回有要删除图像的行号
deleted_data = data.drop(index)
deleted_data.to_csv(new_name, index=False, sep=",")

分别存为train和val,即保留指定行,删除指定行。

new_name = "deleted_all.csv"
deleted_data = pd.read_csv(new_name)
train_name = "train.csv"
val_name = "val.csv"
val_video = ["F055", "F052", "F050", "F040", "F032"]

val_index = deleted_data[deleted_data["frame"].str[:4].isin(val_video)].index
val_data = deleted_data.loc[val_index, :]
train_data = deleted_data.drop(val_index)

train_data.to_csv(train_name, index=False, sep=",")
val_data.to_csv(val_name, index=False, sep=",")



声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。