拆分包含不均匀长度的字符串和Python / R中的多个分隔符

时间:2017-08-10 18:27:53

标签: python r csv

我正在开发一个pandas数据框, business ,它是通过读取Python中的csv文件创建的。 csv文件包含来自Yelp.com网站的数据。其中一个名为 attributes 的列具有嵌套数据结构。这些列中的行长度各不相同。以下内容有望明确:

business.attributes[0]
>"BikeParking: True,BusinessAcceptsBitcoin: False,BusinessAcceptsCreditCards: True,BusinessParking: {'garage': False, 'street': False, 'validated': False, 'lot': True, 'valet': False},DogsAllowed: False,RestaurantsPriceRange2: 2,WheelchairAccessible: True"

business.attributes[1]
>'BusinessAcceptsBitcoin: False,BusinessAcceptsCreditCards: True'

business.attributes[2]
>"Alcohol: none,Ambience: {'romantic': False, 'intimate': False, 'classy': False, 'hipster': False, 'touristy': False, 'trendy': False, 'upscale': False, 'casual': False},BikeParking: True,BusinessAcceptsCreditCards: True,BusinessParking: {'garage': False, 'street': False, 'validated': False, 'lot': False, 'valet': False},Caters: True,GoodForKids: True,GoodForMeal: {'dessert': False, 'latenight': False, 'lunch': False, 'dinner': False, 'breakfast': False, 'brunch': False},HasTV: True,NoiseLevel: quiet,OutdoorSeating: False,RestaurantsAttire: casual,RestaurantsDelivery: True,RestaurantsGoodForGroups: True,RestaurantsPriceRange2: 1,RestaurantsReservations: False,RestaurantsTableService: False,RestaurantsTakeOut: True,WiFi: free"

我想在 business 数据框中插入多个列,并在单独的列中捕获每个属性下的值。捕获属性列中的每一行都会给我一个字符串,但由于各种类型的分隔符和嵌套结构,我正在努力拆分它。我知道数据集中有34个不同的属性,其中6个具有嵌套值。上例中第三行的预期输出样本如下图所示:

Sample output

欢迎使用Python或R中的任何建议来完成此任务。请帮忙!!

0 个答案:

没有答案