[人民日报] 使用 pandas.Series.to_frame() 将单个 Pandas Series 转换为 Dataframe[手机环球网 ]

[人民日报] 使用 pandas.Series.to_frame() 将单个 Pandas Series 转换为 Dataframe[手机环球网 ]

已邀请:
pandas.Series.to_frame() 函数将给定的 Pandas Series 转换为 Dataframe。列的名称可以用 name 参数设置。

import pandas as pd
import numpy as np

np.random.seed(0)

df_series = pd.Series(np.random.randint(0,100,size=(10)),
index=['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'])

print (df_series.to_frame(name='A'))
输出:

A
a 44
b 47
c 64
d 67
e 67
f 9
g 83
h 21
i 36
j 87
在某些情况下,给定的 Series 没有任何名称。在这种情况下,reset_index() 方法可以派上用场。
import pandas as pd
import numpy as np

np.random.seed(0)

df_series = pd.Series(np.random.randint(0,100,size=(10)),
index=['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']).rename_axis('index')

print (df_series)
print ('\n')
print (df_series.reset_index())
输出:

index
a 44
b 47
c 64
d 67
e 67
f 9
g 83
h 21
i 36
j 87
dtype: int64


index 0
0 a 44
1 b 47
2 c 64
3 d 67
4 e 67
5 f 9
6 g 83
7 h 21
8 i 36
9 j 87
如上所示,创建的 DataFrame 中包含了一个名为 0 的新列,并且现有的索引已经被提升为列。可以使用提供给 reset_index() 函数的 name 参数对名为 0 的列进行重命名,如下所示。

import pandas as pd
import numpy as np

np.random.seed(0)

df_series = pd.Series(np.random.randint(0,100,size=(10)),
index=['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']).rename_axis('index')

print (df_series)
print ('\n')
print (df_series.reset_index(name='A'))
输出:

index
a 44
b 47
c 64
d 67
e 67
f 9
g 83
h 21
i 36
j 87
dtype: int64


index A
0 a 44
1 b 47
2 c 64
3 d 67
4 e 67
5 f 9
6 g 83
7 h 21
8 i 36
9 j 87

要回复问题请先登录注册