我正在尝试从CSV创建一个列表。这个CSV包含一个二维表[540行8列],我想创建一个包含特定列值的列表,具体来说是第4列。
我尝试过:list(df.columns.values([4],它确实提到了列的名称,但我试图从第4列的行中获取值,并将其作为列表。
import pandas as pd
import urllib
#This is the empty list
company_name = []
#Uploading CSV file
df = pd.read_csv('DownloadsDropped_Companies.csv')
#Extracting list of all companies name from column "Name of Stock"
companies_column=list(df.columns.values)[4] #This returns the name of the column.
companies_column = list(df.iloc[:,4].values)
-
因此,您可以在发布的代码后添加以下行:
company_name = df[companies_column].tolist()
这将获得公司列中的列数据作为pandas系列(本质上,系列只是一个花哨的列表(,然后将其转换为常规python列表。
-
或者,如果你要从头开始,你也可以只使用这两行
import pandas as pd df = pd.read_csv('DownloadsDropped_Companies.csv') company_name = df[df.columns[4]].tolist()
-
另一种选择:如果这是你对csv文件唯一需要做的事情,你也可以使用python附带的csv库,而不是使用这种方法安装panda。
如果你想了解更多关于如何从pandas DataFrame(代码中的df
变量(中获取数据的信息,你可能会发现这篇博客文章很有帮助。
我认为您可以尝试这样获取特定列的所有值:
companies_column = df[{column name}]
替换";{列名}";使用要访问的值的列。