python 中的数据框和系列以创建 excel 列
data frame and series in python to create excel column
有没有一种方法可以从具有多个行和列的 excel sheet(例如
)在 python 中创建数据框或系列
并期望输出全部在一列中
为数据框尝试了不同的代码,系列没有达到我的预期,系列在我使用的代码中逐字逐句地做
import numpy as np
sr=pd.read_excel('eng.xlsx')
s1=pd.Series(sr, expand=True)
print s1
将DataFrame.stack
with remove MultiIndex
by Series.reset_index
与drop=True
一起使用:
s1 = sr.stack().reset_index(drop=True)
或使用 numpy.ravel
or numpy.flatten
:
将值转换为 numpy array
s1 = pd.Series(sr.values.ravel())
s1 = pd.Series(sr.values.flatten())
样本:
sr = pd.DataFrame({
'A':list('ab'),
'B':list('cd'),
'C':list('ef'),
})
print (sr)
A B C
0 a c e
1 b d f
s1 = sr.stack().reset_index(drop=True)
print (s1)
0 a
1 c
2 e
3 b
4 d
5 f
dtype: object
有没有一种方法可以从具有多个行和列的 excel sheet(例如
)在 python 中创建数据框或系列并期望输出全部在一列中
import numpy as np
sr=pd.read_excel('eng.xlsx')
s1=pd.Series(sr, expand=True)
print s1
将DataFrame.stack
with remove MultiIndex
by Series.reset_index
与drop=True
一起使用:
s1 = sr.stack().reset_index(drop=True)
或使用 numpy.ravel
or numpy.flatten
:
numpy array
s1 = pd.Series(sr.values.ravel())
s1 = pd.Series(sr.values.flatten())
样本:
sr = pd.DataFrame({
'A':list('ab'),
'B':list('cd'),
'C':list('ef'),
})
print (sr)
A B C
0 a c e
1 b d f
s1 = sr.stack().reset_index(drop=True)
print (s1)
0 a
1 c
2 e
3 b
4 d
5 f
dtype: object