Python 如何读取数据:从入门到精通

2024-06-04 15:03:16 浏览数 (1054)

315646df51f00924b16e60c0b6a46868 (1)

Python 作为数据科学领域的热门语言,其强大的数据读取能力功不可没。本文将带你全面了解 Python 如何读取数据,从基础的文件读取到处理结构化数据,助你轻松开启数据分析之旅。

一、读取文本文件

文本文件是最常见的数据存储格式之一,Python 提供了简洁易用的方法读取这类文件。

  • 打开文件:使用​open()​函数打开文件,并指定打开模式('r' 表示读取,'w' 表示写入,'a' 表示追加)。

file = open('data.txt', 'r')

  • 读取内容:使用​read()​方法读取文件全部内容,或使用​readline()​逐行读取。

content = file.read()
print(content)

line = file.readline()
print(line)

  • 关闭文件:使用​close()​方法关闭文件,释放资源。

file.close()

为了避免忘记关闭文件,推荐使用​with open()​语句,它会在代码块执行完毕后自动关闭文件。

with open('data.txt', 'r') as file:
    content = file.read()
    print(content)

二、处理 CSV 文件

CSV (Comma-Separated Values) 是一种常用的结构化数据存储格式,Python 的​csv​模块提供了便捷的处理方法。

  • 读取 CSV 文件:使用​reader()​函数读取 CSV 文件,返回一个可迭代的对象,每一行都是一个列表。

import csv

with open('data.csv', 'r') as file:
    reader = csv.reader(file)
    for row in reader:
        print(row)

  • 处理 CSV 数据:可以根据需要对读取到的数据进行处理,例如提取特定列、数据类型转换等。

import csv

with open('data.csv', 'r') as file:
    reader = csv.reader(file)
    next(reader)  # 跳过标题行
    for row in reader:
        name = row[0]
        age = int(row[1])
        print(f"Name: {name}, Age: {age}")

三、利用 Pandas 处理结构化数据

Pandas 是 Python 数据分析领域的利器,它提供了 DataFrame 数据结构,能够高效地处理结构化数据。

  • 读取数据:Pandas 提供了​read_csv()​、​read_excel()​等函数,可以方便地读取不同格式的数据文件。

import pandas as pd

df = pd.read_csv('data.csv')
print(df)

  • 数据处理:Pandas 提供了丰富的函数和方法,可以进行数据筛选、排序、分组、统计分析等操作。

# 选择年龄大于 30 的数据
df[df['Age'] > 30]

# 按年龄排序
df.sort_values(by='Age')

# 计算平均年龄
df['Age'].mean()

四、读取 JSON 数据

JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,Python 的​json​模块可以方便地处理 JSON 数据。

  • 读取 JSON 数据:使用​load()​函数读取 JSON 文件或字符串,返回一个 Python 字典或列表。

import json

with open('data.json', 'r') as file:
    data = json.load(file)
    print(data)

  • 访问 JSON 数据:可以像操作字典一样访问 JSON 数据。

name = data['name']
age = data['age']
print(f"Name: {name}, Age: {age}")

总结

本文介绍了 Python 读取数据的常用方法,包括读取文本文件、CSV 文件、JSON 数据以及利用 Pandas 处理结构化数据。熟练掌握这些方法将为你进行数据分析打下坚实的基础。