zoukankan      html  css  js  c++  java
  • 数据结构转换


    # Project: Local
    # Create time: 2019-12-30 19:13
    import pandas as pd


    def read_excel(excel_path):
    excel_data = pd.read_excel(excel_path, encoding='gbk', header=None, names=['data_str'])
    print(excel_data)
    excel_data['data_str'] = excel_data['data_str'].apply(lambda x: modify_data_str(x))
    excel_data['data_length'] = excel_data['data_str'].apply(lambda x: get_data_str_length(x))
    return excel_data


    def modify_data_str(data_str):
    data_str = data_str.replace('"', '').replace('”', '').replace('“', '').replace(',', ',').replace('[', '').replace(
    ']', '').replace(':', ':')
    return data_str


    def split_data_str(data_str):
    data_list = []
    column_name, row_values = data_str.split(':')
    column_name, row_values = column_name.strip(), row_values.strip()
    row_value_list = [i.strip() for i in row_values.split(',')]
    data_list.append(column_name)
    data_list.extend(row_value_list)
    return data_list


    def get_data_str_length(data_str):
    data_length = data_str.count(',') + 1
    return data_length


    def classify_sql_data(excel_data):
    data_length_list = excel_data['data_length'].unique()
    for data_length in data_length_list:
    sql_data = excel_data[excel_data['data_length'] == data_length]
    output_sql_data = pd.DataFrame(index=range(data_length))
    for data_str in sql_data['data_str'].values:
    column_name, *values = split_data_str(data_str)
    output_sql_data[column_name] = values
    yield output_sql_data


    excel_path = r'D:Filespycharm_projsLocalxgxsql_testdata.xlsx'
    excel_data = read_excel(excel_path)

    for i in classify_sql_data(excel_data):
    print(i)

    # sql_str = r'"pppp":["苏州",“杭州”,“无锡”]'
    # sql_str = sql_str.replace('”', '"').replace('“', '"')
    # import re
    #
    # sql_str = re.findall('"(.+?)"', sql_str)
    # sql_str = [i.strip() for i in sql_str]
    # print(sql_str)
    # if __name__ == '__main__':
    # def read_excel(excel_path):
    # """
    # 解析excel
    # """
    # pass
    # return
    #
    #
    # def classify_excel(excel_data, length):
    # pass
    # return excel_data
    #
    #
    # def parse_excel(excel_data):
    # pass
    # return excel_data






  • 相关阅读:
    setMasksToBounds
    CSRF跨站
    ORM: object relationship mapping
    orm查询
    图书管理系统(增删改)
    django图书管理半成品(MySQL)
    模板继承(练习测试)
    模板层(template)
    django命令(笔记,自己看的)
    django(注册→登录→主页)增强版
  • 原文地址:https://www.cnblogs.com/avivi/p/12121705.html
Copyright © 2011-2022 走看看