【问题标题】:"ValueError: DataFrame constructor not properly called!" while converting list of lists to dataframe“ValueError:未正确调用 DataFrame 构造函数!”同时将列表列表转换为数据框
【发布时间】:2018-04-03 10:52:48
【问题描述】:
A=[['1'], ['2'], ['3'], ['4'], ['5'], ['6'], ['7'], ['8'], ['9'], ['10'], ['11'], ['12'], ['13'], ['14'], ['15'], ['16'], ['17'], ['18'], ['19'], ['20'], ['21'], ['22'], ['23'], ['24'], ['25'], ['26'], ['27'], ['29'], ['30'], ['31'], ['32'], ['33'], ['34'], ['35'], ['36']]

B=[['Andaman and Nicobar Islands', ' '], ['Andhra Pradesh'], ['Arunachal Pradesh'], ['Assam'], ['Bihar'], ['Chandigarh', ' '], ['Chhattisgarh'], ['Dadra and Nagar Haveli', ' '], ['Daman and Diu', ' '], ['National Capital Territory of Delhi', ' '], ['Goa'], ['Gujarat'], ['Haryana'], ['Himachal Pradesh'], ['Jammu and Kashmir'], ['Jharkhand'], ['Karnataka'], ['Kerala'], ['Lakshadweep', ' '], ['Madhya Pradesh'], ['Maharashtra'], ['Manipur'], ['Meghalaya'], ['Mizoram'], ['Nagaland'], ['Odisha'], ['Puducherry', ' '], ['Rajasthan'], ['Sikkim'], ['Tamil Nadu'], ['Telangana'], ['Tripura'], ['Uttar Pradesh'], ['Uttarakhand'], ['West Bengal']]

C=[['Port Blair'], ['Hyderabad', ' ', '(', 'de jure', ' to 2024)', '\n', 'Amaravati', ' ', '(', 'de facto', ' from 2017)', '[3]', ' ', '[4]', ' ', '[a]'], ['Itanagar'], ['Dispur'], ['Patna'], ['Chandigarh', '[c]'], ['Naya Raipur', '[d]'], ['Silvassa'], ['Daman'], ['New Delhi'], ['Panaji', '[e]'], ['Gandhinagar'], ['Chandigarh'], ['Shimla', '\n', 'Dharamshala', ' (W/2nd)', '[8]', '\n'], ['Srinagar', '\xa0(Summer)', '\n', 'Jammu', '\xa0(Winter)'], ['Ranchi'], ['Bengaluru'], ['Thiruvananthapuram'], ['Kavaratti'], ['Bhopal'], ['Mumbai', '[g]', '\n', 'Nagpur', '\xa0(W/2nd)', '[h]'], ['Imphal'], ['Shillong'], ['Aizawl'], ['Kohima'], ['Bhubaneswar'], ['Puducherry'], ['Jaipur'], ['Gangtok', '[j]'], ['Chennai', '[k]'], ['Hyderabad', '[l]'], ['Agartala'], ['Lucknow'], ['Dehradun', '[m]'], ['Kolkata']]

我有上述三个列表,我希望它能够将它们转换为以下格式的 pandas 数据框:

Numbers State/UT Capital
1 Andaman and Nicobar Islands Port Blair
2 Andhra Pradesh Hyderabad

【问题讨论】:

    标签: python python-3.x list pandas dataframe


    【解决方案1】:

    您可以使用itertoolszip 来帮助解决这个问题:

    from itertools import chain
    import pandas as pd
    
    df = pd.DataFrame({'Numbers': list(chain.from_iterable(A)),
                       'State/UT Capital': [' '.join([i[0], j[0]]) for i, j in zip(B, C)]})
    

    结果:

       Numbers                               State/UT Capital
    0        1         Andaman and Nicobar Islands Port Blair
    1        2                       Andhra Pradesh Hyderabad
    2        3                     Arunachal Pradesh Itanagar
    3        4                                   Assam Dispur
    .........
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-08
      • 2021-09-27
      • 1970-01-01
      • 2020-01-22
      • 1970-01-01
      • 1970-01-01
      • 2017-07-27
      • 2014-10-25
      相关资源
      最近更新 更多