我从一堆文件中读取数据并将其存储在数据帧中。我想要一列数据框来指示数据来自哪个文件。如何创建一个列,使相同的字符串重复一遍又一遍,而不需要手动键入?
我正在读取的每个文件都有大约100个数据点(但每次数据点的数目不同)当我阅读每一个时,我将沿着轴= 0的数据帧。应该是这样的。

import numpy as np
import pandas as pd
numbers = np.random.randn(5) # this data could be of any length, ~100
labels = np.array(['file01','file01','file01','file01','file01'])
tf = pd.DataFrame()
tf['labels'] = labels
tf['numbers'] = numbers

In [8]: tf
Out[8]:
   labels   numbers
0  file01 -0.176737
1  file01 -1.243871
2  file01  0.154886
3  file01  0.236653
4  file01 -0.195053

(是的,我知道我可以制作‘Fiel01’列标题,并沿着轴= 1附加每一个,但是有理由我不想那样做。)

最佳答案

好了,你的代码是固定的!实际上,您可以在dataframe构造函数中使用的dict中放入一个值:)。

import numpy as np
import pandas as pd
filename = 'file01'
numbers = np.random.randn(5) # this data could be of any length, ~100
tf = pd.DataFrame({'labels': filename , 'numbers': numbers})

In [8]: tf
Out[8]:
   labels   numbers
0  file01 -0.176737
1  file01 -1.243871
2  file01  0.154886
3  file01  0.236653
4  file01 -0.195053

10-08 00:09