Python使用Pandas库创建、读取和修改CSV文件的完整指南

Mia
Mia
发布时间:2026-10-16 | 2人浏览过
原创

本文详细介绍如何使用Python的Pandas库对CSV文件进行创建、读取和修改操作。通过具体代码示例,演示如何从Numpy数组生成DataFrame并保存为CSV,以及如何读取CSV文件并转换为数组。此外,还涵盖了列与行的增删改操作及索引重置,帮助开发者高效处理结构化数据。

本文将简要展示如何利用Python中的Pandas库来实现CSV数据文件的创建、读取以及修改操作。

1 写入CSV文件

import numpy as np
import pandas as pd

# -----create an initial numpy array----- #
data = np.zeros((8,4))
# print(data.dtype)
# print(type(data))
# print(data.shape)

# -----from array to dataframe----- #
df = pd.DataFrame(data)
# print(type(df))
# print(df.shape)
# print(df)

# -----edit columns and index----- #
df.columns = ['A', 'B', 'C', 'D']
df.index = range(data.shape[0])
df.info()

# -----save dataframe as csv----- #
csv_save_path='./data_.csv'
df.to_csv(csv_save_path, sep=',', index=False, header=True)

# -----check----- #
df = pd.read_csv(csv_save_path)
print('-' * 25)
print(df)

执行上述代码后,控制台输出如下信息:

<class 'pandas.core.frame.DataFrame'> RangeIndex: 8 entries, 0 to 7 Data columns (total 4 columns): A 8 non-null float64 B 8 non-null float64 C 8 non-null float64 D 8 non-null float64 dtypes: float64(4) memory usage: 336.0 bytes ------------------------- A B C D 0 0.0 0.0 0.0 0.0 1 0.0 0.0 0.0 0.0 2 0.0 0.0 0.0 0.0 3 0.0 0.0 0.0 0.0 4 0.0 0.0 0.0 0.0 5 0.0 0.0 0.0 0.0 6 0.0 0.0 0.0 0.0 7 0.0 0.0 0.0 0.0

2 读取CSV文件

import pandas as pd
import numpy as np

csv_path = './data_.csv'

# -----saved as dataframe----- #
data = pd.read_csv(csv_path)
# ---if index is given in csv file, you can use next line of code to replace the previous one---
# data = pd.read_csv(csv_path, index_col=0)
print(type(data))
print(data)
print(data.shape)

# -----saved as array----- #
data_ = np.array(data)
# data_ = data.values
print(type(data_))
print(data_)
print(data_.shape)

读取操作执行后的控制台输出结果如下:

<class 'pandas.core.frame.DataFrame'> A B C D 0 0.0 0.0 0.0 0.0 1 0.0 0.0 0.0 0.0 2 0.0 0.0 0.0 0.0 3 0.0 0.0 0.0 0.0 4 0.0 0.0 0.0 0.0 5 0.0 0.0 0.0 0.0 6 0.0 0.0 0.0 0.0 7 0.0 0.0 0.0 0.0 (8, 4) <class 'numpy.ndarray'> [[0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.]] (8, 4)

3 修改CSV文件

import pandas as pd
import numpy as np

csv_path = './data_.csv'
df = pd.read_csv(csv_path)

# -----edit columns and index----- #
df.columns = ['X1', 'X2', 'X3', 'Y']
df.index = range(df.shape[0])
# df.index = [i+1 for i in range(df.shape[0])]

# -----columns operations----- #
Y = df['Y']
df['X4'] = [4 for i in range(df.shape[0])]        # add
df['X5'] = [5 for i in range(df.shape[0])]
# print(df)
df.drop(columns='Y', inplace=True)                # delete
# print(df)
df['X1'] = [i+1 for i in range(df.shape[0])]      # correct --(1)
# df.iloc[:df.shape[0], 0] = [i+1 for i in range(df.shape[0])]
                                                  # correct --(2)
# print(df)
df['Y'] = Y_temp  
# print(df)

# -----rows operations----- #
df.loc[df.shape[0]] = [i+2 for i in range(6)]     # add
# print(df)
df.drop(index=4, inplace=True)                    # delete
# print(df)
df.loc[0] = [i+1 for i in range(df.shape[1])]     # correct
# print(df)

# -----edit index again after rows operations!!!----- #
df.index = range(df.shape[0])

# -----save dataframe as csv----- #
csv_save_path='./data_copy.csv'
df.to_csv(csv_save_path, sep=',', index=False, header=True)

print(df)

修改操作执行后的控制台输出结果如下:

X1 X2 X3 X4 X5 Y 0 1.0 2.0 3.0 4 5 6.0 1 2.0 0.0 0.0 4 5 0.0 2 3.0 0.0 0.0 4 5 0.0 3 4.0 0.0 0.0 4 5 0.0 4 6.0 0.0 0.0 4 5 0.0 5 7.0 0.0 0.0 4 5 0.0 6 8.0 0.0 0.0 4 5 0.0 7 2.0 3.0 4.0 5 6 7.0

参考资料

除了Pandas库,Python内置的csv库同样可以实现CSV文件的读写与修改功能。

关于Python中CSV文件的创建、读取及修改等操作的综合总结。

总结

至此,关于如何利用Python创建、读取和修改CSV数据文件的介绍已完毕。如需了解更多相关Python处理CSV的内容,建议搜索本站往期文章或继续阅读后续相关文章。感谢大家的支持!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表