【发布时间】:2017-12-21 11:53:17
【问题描述】:
我想使用 python 制作一个程序,该程序将从 csv 文件生成所有可能的路径。我该怎么办?
import pandas as pd
import csv
def dataInCol(fieldName):
df = pd.read_csv('..\\data.csv',usecols=[fieldName])
qr = df.values.tolist()
flattened = [val for sublist in qr for val in sublist]
return flattened
def makingPaths(dataCol, path = "Companies: "):
with open('..\\data.csv', "rb") as f:
reader = csv.DictReader(f)
headers = reader.fieldnames
for eachValue in dataCol:
path = path + str(eachValue)
if str(eachValue) in headers:
newCol = dataInCol(str(eachValue))
makingPaths(newCol)
break
return path
例如下图:
公司 -> 苹果 -> iPhone -> iPhone4.0
公司 -> 三星 -> Gtablet -> SamTab7.0
...
公司 -> 索尼 -> Xperia -> Xperia4K
... 数据链接:https://docs.google.com/spreadsheets/d/11puxvQH6z6D3xiKybHEVbBpMp_Zv87LjlTd_ZIxYNw8/edit?usp=sharing
Companies Apple Samsung Sony iPhone Mac iPad Galaxy Notebook Gtablet Xperia Xtablet
Apple iPhone Galaxy Xperia iPhone4.0 Macbook iPadMini GalaxyS3 NSeries5 SamTab7.0 Xperia4K XTab6.0
Samsung Macbook Notebook Xtablet iPhone4.7 MacPro iPadReg GalaxyS4 NSeries7 SamTab9.0 XperiaUltra XTab8.0
Sony iPad Gtablet iPhone5.5 MacBookPro iPadPro GalaxyS8 NSeries9 XperiaPrem XTab10.0
【问题讨论】:
-
将 csv 作为文本发布将是一种改进...
-
请将您的数据添加为文本,详细说明您要执行的操作并添加您目前拥有的代码。
-
“路径”是什么意思?
str对象还是什么? -
@AzatIbrakov 是一个 str 对象
-
@Jean-FrançoisFabre 我发布了数据链接