为了账号安全,请及时绑定邮箱和手机立即绑定

如何将字符串列表转换为列表列表?

如何将字符串列表转换为列表列表?

慕虎7371278 2021-12-17 16:58:03
我是编程和 stackoverflow 的新手。抱歉,这似乎太基本了。我想把这个:我正在尝试训练 AI 以根据历史数据预测汽车的目的地。它在一个列内,我必须遍历所有这些。我只列出它正在工作,但在列中,它不是出于某种原因。我正在 anaconda 的 windows 10 上尝试这个,jupyter notebook我想把这个:lst = ['55.7492,12.5405', '55.7492,12.5405', '55.7492,12.5406', '55.7492,12.5406']进入这个lst = [[55.7492,12.5405], [55.7492,12.5405], [55.7492,12.5406], [55.7492,12.5406]]我有一个列,其中有很多 csv 文件。我试着把它们变成这样:[[x] for x in lst][['55.7492,12.5405'], ['55.7492,12.5405'], ['55.7492,12.5406'], ['55.7492,12.5406']]所以它的工作在 csv 之外找到,但是当我尝试为 colomn 中的每个框做它时:for stuff in data['column']:    [[x] for x in stuff]for stuff in data_train['locations']:    [map(int,x.split()) for x in stuff]列中没有任何变化。
查看完整描述

3 回答

?
PIPIONE

TA贡献1829条经验 获得超9个赞

apply与列表理解一起使用,将列表的每个值拆分,为floats并强制转换为s:


lst = ['55.7492,12.5405', '55.7492,12.5405', '55.7492,12.5406', '55.7492,12.5406']

df = pd.DataFrame({'column':[lst,lst]})


df['locations'] = df['column'].apply(lambda x: [list(map(float,y.split(','))) for y in x])

print (df)


                                              column  \

0  [55.7492,12.5405, 55.7492,12.5405, 55.7492,12....   

1  [55.7492,12.5405, 55.7492,12.5405, 55.7492,12....   


                                           locations  

0  [[55.7492, 12.5405], [55.7492, 12.5405], [55.7...  

1  [[55.7492, 12.5405], [55.7492, 12.5405], [55.7...  


查看完整回答
反对 回复 2021-12-17
?
婷婷同学_

TA贡献1844条经验 获得超8个赞

我认为最有效的方法是使用ast.literal_eval():


import ast

y = [list(ast.literal_eval(x)) for x in lst]

现在,如果您有一列包含要转换为列表列表的字符串列表,那么您可以使用:


df['new_col'] =df['col'].apply(lambda x: [list(ast.literal_eval(y)) for y in x ])


查看完整回答
反对 回复 2021-12-17
?
眼眸繁星

TA贡献1873条经验 获得超9个赞

您应该分配列表理解的输出:

for col in columns:  # where columns is a list of your columns
    data[col] = [[x] for x in data[col]]

或者只是在一个列上,这样做就足够了:

data_train['locations'] = [map(int,x.split()) for x in data_train['locations']]

因为data['column']是一个元素列表,当你遍历它时,stuff每次迭代都会有一个不同的行元素,所以不是一个列表。


查看完整回答
反对 回复 2021-12-17
  • 3 回答
  • 0 关注
  • 390 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信