在Python中,数据加载与格式转换是数据分析和机器学习任务中的常见操作。以下是一些常见的数据格式以及如何在Python中加载和转换它们:
CSV 文件:
加载:import pandas as pd # 加载CSV文件到一个DataFrame对象 df = pd.read_csv('data.csv')转换为其他格式(例如转为Excel):
df.to_excel('data.xlsx', index=False)Excel 文件:
加载:df = pd.read_excel('data.xlsx', sheet_name='Sheet1') # 加载特定工作表转换为CSV:
df.to_csv('data_converted.csv', index=False)JSON 文件:
加载:import json # 加载JSON文件到Python字典或列表 with open('data.json', 'r') as f: data = json.load(f)转换为DataFrame:
df = pd.DataFrame(data)XML 文件:
加载:import xml.etree.ElementTree as ET # 解析XML文件 tree = ET.parse('data.xml') root = tree.getroot() # 根据XML结构手动构建DataFrame,通常需要定制处理逻辑 data = [] for element in root.iter('record'): # 假设每个记录是一个名为'record'的元素 record_data = { } for child in element: record_data[child.tag] = child.text data.append(record_data) df = pd.DataFrame(data)SQL 数据库:
加载:import sqlite3 from pandas import read_sql_query conn = sqlite3.connect('database.db') df = pd.read_sql_query("SELECT * FROM my_table", conn)Stata (.dta) 文件:
加载:import pandas as pd df = pd.read_stata('data.dta')HDF5 或 feather 等二进制格式:
加载:df = pd.read_hdf('data.h5', key='table_name') # HDF5 # 或者 df = pd.read_feather('data.feather') # Feather format写入:
df.to_hdf('data_converted.h5', key='table_name', mode='w') # HDF5 df.to_feather('data_converted.feather') # Feather formatTFRecord 文件(用于TensorFlow数据集):
加载/写入需要使用tf.data.TFRecordDataset和tf.io模块的相关函数。文本文件:
加载简单文本文件可以使用内置的open()函数读取并按行处理。
以上代码片段仅展示了基本的加载和转换方法,实际应用中可能还需要对数据进行清洗、类型转换等额外处理。对于更复杂的数据结构和转换需求,请查阅对应库的文档以获取详细信息。