数据框包含一个名为疾病的列,该列逐行包含许多列表,例如,第一行包含['uml564','高血压疾病'],依此类推,另外一行具有此类列表,现在我希望删除这些列表的第一个索引从整个数据框中
答案 0 :(得分:1)
********语法: 让我们考虑一个例子-*****
import pandas as pd
students = [ ('jack', 34, 'Sydeny' ,['abc', 'def','pk']) ,
('Riti', 30, 'Delhi' , ['India','kk']) ,
('Vikas', 31, 'Mumbai' , ['India','sk','uu'] ) ,
('Neelu', 32, 'Bangalore' ,[ 'India','kk','ok'] ) ,
('John', 16, 'New York' , ['US','jj']),
('Mike', 17, 'las vegas' , ['US','ii']) ]
#Create a DataFrame object
dfObj = pd.DataFrame(students, columns = ['Name' , 'Age', 'City' , 'Country'],
index=['a', 'b', 'c' , 'd' , 'e' , 'f'])
print(dfObj)
df=dfObj['Country'].apply(lambda x: x[1:])
dfObj1= dfObj.drop(['Country'], axis=1)
df_row_merged = pd.concat([dfObj1, df], axis=1)
答案 1 :(得分:0)
IIUC,您可以这样做:
df['your_column_name'].apply(lambda x: x[1])
,如果可行:
df['your_column_name'] = df['your_column_name'].apply(lambda x: x[1])
如果您有更高级的案例,请混合使用列表和没有列表的项目:
df['your_column_name'].apply(lambda x: x[1] if x== type(list) else x)