Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在读取多个csv文件时,是否可以创建一个名为ticker的列,其中包含每个股票的名称?_Python_Csv_Finance_Yahoo_Stocks - Fatal编程技术网

Python 在读取多个csv文件时,是否可以创建一个名为ticker的列,其中包含每个股票的名称?

Python 在读取多个csv文件时,是否可以创建一个名为ticker的列,其中包含每个股票的名称?,python,csv,finance,yahoo,stocks,Python,Csv,Finance,Yahoo,Stocks,我对Python相当陌生,在读取多个csv文件时,需要一些帮助来生成一个名为Ticker的新列。作为雅虎!财务API贬值了,我正在从雅虎读取csv数据!为“谷歌”、“IBM”和“AAPL”融资。下面的代码将单个csv文件读入一个日期框,但是,很难区分哪个股票是哪个股票 path = allFiles = glob.glob(path + "/*.csv") frame = pd.DataFrame() list_ = [] for file in allFiles: df = pd.

我对Python相当陌生,在读取多个csv文件时,需要一些帮助来生成一个名为
Ticker
的新列。作为雅虎!财务API贬值了,我正在从雅虎读取csv数据!为“谷歌”、“IBM”和“AAPL”融资。下面的代码将单个csv文件读入一个日期框,但是,很难区分哪个股票是哪个股票

path = 
allFiles = glob.glob(path + "/*.csv")
frame = pd.DataFrame()
list_ = []
for file in allFiles:
     df = pd.read_csv(file,index_col=None, 
          header=0)
     list_.append(df)
frame = pd.concat(list_)
frame.head()
是否可以创建一个名为
Ticker
的列,其中包含每个股票观察的csv文件名?GOOG.csv是Google的文件名,IBM.csv是IBM的文件名

这将使识别哪只股票更容易。

根据上一篇文章,我相信你有两个明确的选择。(1)在原始read_csv命令中包含name=[]以指定股票名称,或(2)在加载前将列名添加到数据帧中

方法(1)可能涉及使用以下代码段替换当前读取:

df=pd.read_csv(file,names=[file[len(path)+1:-4]],index_col=None)
在这里,我假设我可以通过查看路径后一个斜杠后的所有字符,直到.csv,来获得所需的ticker字符串

方法(2)可以通过在读取csv之后但在追加数据帧之前添加以下代码行来完成:

df.columns=[file[len(path)+1:-4]]
我在这个回复中假设,对于每个csv,您只有/想要一列数据,但是如果您想要在其中放置多个列,您只需在列名称列表中指定多个名称即可