Python 常用函数方法
DataFrame 与 Dict 的转换、reindex()对DataFrame排序
注:字典没有顺序,DataFrame有顺序。
import
pandas
as
pd
import
numpy
as
np
dict
=
{
'c'
:
1
,
'a'
:
2
,
'b'
:
3
}
print
(
dict
)
#打印字典
#将字典转为 DataFrame,列索引命名为zhi,行索引为原字典的键名
df
=
pd
.
DataFrame
(
[
dict
]
,
index
=
[
'zhi'
]
)
#DataFrame转Dict
#按列表对DataFrame进行排序
df_sort
=
df
.
T
.
reindex
(
[
'b'
,
'c'
,
'a'
]
)
print
(
df_sort
)
#reset_index:原行索引作为一列保留,列名改为 ID
df_setindex
=
df_sort
.
reset_index
(
)
.
rename
(
columns
=
{
'index'
:
'ID'
}
)
print
(
df_setindex
)
#将DataFrame转为字典,取ID为字典的键,zhi为字典的值
df_dict
=
df_setindex
.
set_index
(
'ID'
)
.
T
.
to_dict
(
'list'
)
#Dict转DataFrame
print
(
df_dict
)
#打印字典
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
字典
==
>
{
'c'
:
1
,
'b'
:
3
,
'a'
:
2
}
zhi
b
3
c
1
a
2
ID zhi
0
b
3
1
c
1
2
a
2
字典
==
>
{
'c'
:
[
1
]
,
'b'
:
[
3
]
,
'a'
:
[
2
]
}
Python DataFrame.groupby()聚合函数
groupby()返回值格式为DataFrame,特别注意,groupby里面的字段内的数据重构后都会变成索引;groupby(),一般和sum()、mean()一起使用。
import
pandas
as
pd
df
=
pd
.
read_excel
(
'temp_python.xlsx'
)
#print(df)
df_grp
=
df
.
groupby
(
[
'证券代码'
,
'买卖方向'
]
)
.
sum
(
)
df_grp
.
to_csv
(
"myexcel2.csv"
)
# 导出数据到CSV文件myexcel2.csv
print
(
df_grp
)
import
pandas
as
pd
df
=
pd
.
read_excel
(
'temp_python.xlsx'
)
#print(df)
df
.
index
=
[
df
[
'证券代码'
]
,
df
[
'买卖方向'
]
]
df
.
to_csv
(
"myexcel2.csv"
)
# 导出数据到CSV文件myexcel2.csv
print
(
df
)