Python 将 CSV 分割成多个文件
在本文中,我们将学习如何在 Python 中将一个 CSV 文件拆分为多个文件。 我们将使用 Pandas 创建一个 CSV 文件并将其拆分为多个其他文件。
使用 Pandas 在 Python 中创建 CSV 文件
要使用 Pandas 在 Python 中创建 CSV,必须首先通过命令行界面 (CLI) 安装 Pandas。
pip install pandas
此命令将下载 Pandas 并将其安装到您的本地计算机中。 使用 import
关键字,您可以轻松地将其导入到您当前的 Python 程序中。
让我们验证 Pandas 是否已安装。
代码示例:
import pandas as pd
print("The Version of Pandas is: ", pd.__version__)
输出:
The Version of Pandas is: 1.3.5
现在,让我们创建一个 CSV 文件。
代码示例:
import pandas as pd
# create a data set
data_dict = {'Roll no': [1, 2, 3, 4, 5, 6, 7, 8],
'Gender': ["Male", "Female", "Female", "Male",
"Male", "Female", "Male", "Female"],
'CGPA': [3.5, 3.3, 2.7, 3.8, 2.4, 2.1, 2.9, 3.9],
'English': [76, 77, 85, 91, 49, 86, 66, 98],
'Mathematics': [78, 87, 54, 65, 90, 59, 63, 89],
'Programming': [99, 45, 68, 85, 60, 39, 55, 88]}
# create a data frame
data = pd.DataFrame(data_dict)
# convert the data frame into a csv file
data.to_csv("studesnts.csv")
# Print the output
print(data)
输出:
Roll no Gender CGPA English Mathematics Programming
0 1 Male 3.5 76 78 99
1 2 Female 3.3 77 87 45
2 3 Female 2.7 85 54 68
3 4 Male 3.8 91 65 85
4 5 Male 2.4 49 90 60
5 6 Female 2.1 86 59 39
6 7 Male 2.9 66 63 55
7 8 Female 3.9 98 89 88
在 Python 中将 CSV 文件拆分为多个文件
我们已经成功创建了一个 CSV 文件。 让我们将其拆分为多个文件,但可以使用不同的矩阵在列或行的基础上拆分 CSV。
根据行拆分 CSV 文件
让我们在 Python 中基于行拆分 CSV 文件。
代码示例:
import pandas as pd
# read DataFrame
data = pd.read_csv("students.csv")
# number of csv files along with the row
k = 2
size = 4
for i in range(k):
df = data[size*i:size*(i+1)]
df.to_csv(f'students{i+1}.csv', index=False)
file1 = pd.read_csv("students1.csv")
print(file1)
print("\n")
file2 = pd.read_csv("students2.csv")
print(file2)
输出:
Roll no Gender CGPA English Mathematics Programming
0 1 Male 3.5 76 78 99
1 2 Female 3.3 77 87 45
2 3 Female 2.7 85 54 68
3 4 Male 3.8 91 65 85
Roll no Gender CGPA English Mathematics Programming
4 5 Male 2.4 49 90 60
5 6 Female 2.1 86 59 39
6 7 Male 2.9 66 63 55
7 8 Female 3.9 98 89 88
上面的代码将 students.csv 文件拆分为两个多文件,student1.csv 和 student2.csv。 文件按行分隔; 第 0 到 3 行存储在 student.csv 中,第 4 到 7 行存储在 student2.csv 文件中。
根据列拆分 CSV 文件
借助 groupby()
函数,我们可以根据列矩阵拆分任何 CSV 文件。 groupby()
函数属于 Pandas 库,使用分组数据。
在这种情况下,我们根据性别对学生数据进行分组。
代码示例:
import pandas as pd
# read DataFrame
data = pd.read_csv("students.csv")
for (gender), group in data.groupby(['Gender']):
group.to_csv(f'{gender} students.csv', index=False)
print(pd.read_csv("Male students.csv"))
print("\n")
print(pd.read_csv("Female students.csv"))
输出:
Roll no Gender CGPA English Mathematics Programming
0 1 Male 3.5 76 78 99
1 4 Male 3.8 91 65 85
2 5 Male 2.4 49 90 60
3 7 Male 2.9 66 63 55
Roll no Gender CGPA English Mathematics Programming
0 2 Female 3.3 77 87 45
1 3 Female 2.7 85 54 68
2 6 Female 2.1 86 59 39
3 8 Female 3.9 98 89 88
总结
拆分数据是一种有用的数据分析技术,有助于理解和有效地排序数据。
在本文中,我们讨论了如何使用 Pandas 库创建 CSV 文件。 此外,我们还讨论了两种常见的数据拆分技术,行式数据拆分和列式数据拆分。
相关文章
将多个 CSV 文件导入 Pandas 并连接成一个 DataFrame
发布时间:2023/06/01 浏览次数:168 分类:Python
-
本篇文章介绍如何读取多个 .csv 文件并将所有 DataFrame 连接成一个。本篇文章将使用 Pandas 读取数据文件并创建和组合 DataFrame。
Python 中的 F-Test
发布时间:2023/06/01 浏览次数:113 分类:Python
-
本篇文章介绍 F 统计、F 分布以及如何使用 Python 对数据执行 F-Test 测试。方差(ANOVA) 分析中的 F 值
Python 套接字刷新
发布时间:2023/06/01 浏览次数:141 分类:Python
-
Python 套接字刷新 我们有没有想过如何在 Python 中刷新套接字?刷新套接字在网络应用程序中很常见,但大多数人需要帮助才能理解它是如何工作的。
Python 套接字 Accept 超时
发布时间:2023/06/01 浏览次数:138 分类:Python
-
本文讨论了 Python 中套接字的超时功能,该功能对于缓解无限期等待套接字接受的问题是必要的。套接字接受、拒绝和超时。Socket Accept:当socket打开成功,此时服务端和客户端已经建立连接,可
在 Python 中使用 OpenCV 的 imshow() 函数
发布时间:2023/06/01 浏览次数:80 分类:Python
-
本篇文章将介绍如何使用该库的 imshow() 函数。在 Python 中使用 OpenCV 库中的 imshow() 函数 cv2.imshow() 函数可以在新窗口中显示图像。 创建的窗口将自动调整以适合图像。
Python 中的 OpenCV-contrib 模块
发布时间:2023/06/01 浏览次数:192 分类:Python
-
Python 提供了一个名为 OpenCV 的标准库。 它有很多工具和功能来处理和实现不同的技术和算法。这个 OpenCV 库中有一个名为 OpenCV-contrib 的附加项。 我们将在本教程中讨论这个 OpenCV-contrib 模块及其
Python 中 OpenCV 阈值
发布时间:2023/06/01 浏览次数:199 分类:Python
-
本篇文章将解决在 Python 中使用 cv2.threshold() 函数的问题。阈值技术 阈值处理是一种对黑白图像进行的图像处理技术,可用于去除噪声和过滤具有极值的像素。
Python 中的 OpenCV Canny
发布时间:2023/06/01 浏览次数:184 分类:Python
-
本篇文章将介绍 Python 中的 cv2.canny() 函数。在 Python 中使用 cv2.canny() 函数 cv2.canny() 函数实现了由 John F. Canny 开发的 Canny 边缘检测算法。
在 Python 中使用 OpenCV 筛选
发布时间:2023/06/01 浏览次数:56 分类:Python
-
本教程将演示如何使用 OpenCV 实现 SIFT 算法并将其用于 Python 中的特征匹配。 我们还将学习在 Python 中使用 OpenCV 使用 SIFT 算法来匹配两个图像。