python - 如何将字符串列表转换为列表列表?
问题描述
我是编程和stackoverflow的新手。抱歉,这似乎太基本了。我试图把这个:
我正在尝试训练人工智能来根据历史数据预测汽车的目的地。它在列内,我必须遍历所有列。我是一个列表,它正在工作,但在一个列中,它不是出于某种原因。
我在 anaconda , jupyter notebook 的 Windows 10 上尝试这个
我试图把这个:
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 之外找到了工作,但是当我尝试为列中的每个框执行此操作时:
for stuff in data['column']:
[[x] for x in stuff]
for stuff in data_train['locations']:
[map(int,x.split()) for x in stuff]
列中没有任何变化。
解决方案
与列表推导一起使用apply
以拆分列表的每个值,
并强制转换为float
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...
推荐阅读
- javascript - scrollLeft 属性给出的值小于预期
- javascript - javascript解构不声明变量
- java - 使用 Hashmap 获取额外参数与使用拆分
- swagger - open api 3.0 如何支持单个查询参数键多值?
- mysql - SQL检查条件是否存在或不存在
- asp.net-core - API 不返回 CurrentUser。返回 500 内部服务器错误
- javascript - 调用深层嵌套数组
- django - 如何实现调用一些依赖api的api?
- html - Gmail 被截断并在内容中显示 HTML
- javascript - 如何使用 javascript 将 DOCX 转换为 ODT 格式?