我有2个数据帧,其键如下:
测向:
Index(['artistName', 'artForm/nameOfArt/practicedSkill', 'state', 'district',
'village', 'pinCode', 'dob/yearOfBirth/date', 'gender', 'phone',
'email', 'differentlyAbled', 'languages', 'exp',
'category/SC/ST/OBC/General', 'scheme', 'organisation'],
dtype='object')
df1型:
Index(['S.NO', 'artForm/nameOfArt/practicedSkill','exp', 'organisation',
'Complete Address of the organisation/individuals associated',
'artistName', 'Father's Name', 'dob/yearOfBirth/date', 'gender',
'languages', 'Address - 1', 'Address - 2', 'State', 'District',
'Pin Code', 'phone', 'EXPERIENCE', 'scheme', 'Email id of artist ',
'Submitted By'],
dtype='object')
我想匹配键并从df1中选取所需的列来创建一个新的df。你知道吗
到目前为止我的代码(不起作用)
import pandas as pd
from difflib import get_close_matches
df = pd.DataFrame(columns = ['artistName', 'artForm/nameOfArt/practicedSkill', 'state', 'district', 'village', 'pinCode', 'dob/yearOfBirth/date', 'gender', 'phone', 'email', 'differentlyAbled', 'languages', 'exp', 'artAcademy', 'category/SC/ST/OBC/General', 'scheme'])
df1 = pd.read_excel("C:\\Users\\Desktop\\Culture\\Madur.xlsx")
df.apply(lambda x: x.astype(str).str.lower())
df1.apply(lambda x: x.astype(str).str.lower())
df2 = pd.DataFrame()
seq = [r for r in df.keys() if get_close_matches(r, df1.keys(), n=1, cutoff = .50)]
seq
序号=
['artistName',
'artForm/nameOfArt/practicedSkill',
'state',
'district',
'village',
'pinCode',
'dob/yearOfBirth/date',
'gender',
'phone',
'email',
'languages',
'exp',
'scheme',
'organisation']
我想要的是从seq
变量中选取列并生成df。有几个文件需要像这样与df
进行比较。你知道吗
我能够从df1
中提取需要选择的列,但是我该如何做呢?“finalList”包含需要从df1
中选取的列的列表。你知道吗
如果我正确理解了这个问题,这应该是可行的:
您就快到了-熊猫数据框可以毫无问题地接受列名列表:
相关问题 更多 >
编程相关推荐