{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 保存与加载"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 与dict转换"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 1, 29, 95, 40, 30, 13],\n",
" [58, 43, 26, 78, 70, 61],\n",
" [41, 18, 17, 57, 45, 29],\n",
" [14, 55, 36, 82, 75, 43],\n",
" [25, 40, 49, 5, 49, 57],\n",
" [48, 61, 59, 1, 45, 88],\n",
" [73, 53, 87, 33, 46, 37],\n",
" [12, 12, 23, 82, 94, 8]])"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\"\"\"\n",
"使用指定data,index,columns的方式创建dataframe\n",
"下面使用了ord和chr来遍历字母表\n",
"\"\"\"\n",
"index = [chr(i) for i in range(ord('a'), ord('a') + 8)]\n",
"columns = ['duration', 'playtime', 'up', 'favorite', 'comment', 'share']\n",
"df = pd.DataFrame(np.random.randint(1, 100, (len(index), len(columns))), index=index, columns=columns)\n",
"df.values"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'a': {'duration': 1,\n",
" 'playtime': 29,\n",
" 'up': 95,\n",
" 'favorite': 40,\n",
" 'comment': 30,\n",
" 'share': 13},\n",
" 'b': {'duration': 58,\n",
" 'playtime': 43,\n",
" 'up': 26,\n",
" 'favorite': 78,\n",
" 'comment': 70,\n",
" 'share': 61},\n",
" 'c': {'duration': 41,\n",
" 'playtime': 18,\n",
" 'up': 17,\n",
" 'favorite': 57,\n",
" 'comment': 45,\n",
" 'share': 29},\n",
" 'd': {'duration': 14,\n",
" 'playtime': 55,\n",
" 'up': 36,\n",
" 'favorite': 82,\n",
" 'comment': 75,\n",
" 'share': 43},\n",
" 'e': {'duration': 25,\n",
" 'playtime': 40,\n",
" 'up': 49,\n",
" 'favorite': 5,\n",
" 'comment': 49,\n",
" 'share': 57},\n",
" 'f': {'duration': 48,\n",
" 'playtime': 61,\n",
" 'up': 59,\n",
" 'favorite': 1,\n",
" 'comment': 45,\n",
" 'share': 88},\n",
" 'g': {'duration': 73,\n",
" 'playtime': 53,\n",
" 'up': 87,\n",
" 'favorite': 33,\n",
" 'comment': 46,\n",
" 'share': 37},\n",
" 'h': {'duration': 12,\n",
" 'playtime': 12,\n",
" 'up': 23,\n",
" 'favorite': 82,\n",
" 'comment': 94,\n",
" 'share': 8}}"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# df -> dict\n",
"data_dict = df.to_dict(orient='index')\n",
"data_dict"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" duration | \n",
" playtime | \n",
" up | \n",
" favorite | \n",
" comment | \n",
" share | \n",
"
\n",
" \n",
" \n",
" \n",
" a | \n",
" 1 | \n",
" 29 | \n",
" 95 | \n",
" 40 | \n",
" 30 | \n",
" 13 | \n",
"
\n",
" \n",
" b | \n",
" 58 | \n",
" 43 | \n",
" 26 | \n",
" 78 | \n",
" 70 | \n",
" 61 | \n",
"
\n",
" \n",
" c | \n",
" 41 | \n",
" 18 | \n",
" 17 | \n",
" 57 | \n",
" 45 | \n",
" 29 | \n",
"
\n",
" \n",
" d | \n",
" 14 | \n",
" 55 | \n",
" 36 | \n",
" 82 | \n",
" 75 | \n",
" 43 | \n",
"
\n",
" \n",
" e | \n",
" 25 | \n",
" 40 | \n",
" 49 | \n",
" 5 | \n",
" 49 | \n",
" 57 | \n",
"
\n",
" \n",
" f | \n",
" 48 | \n",
" 61 | \n",
" 59 | \n",
" 1 | \n",
" 45 | \n",
" 88 | \n",
"
\n",
" \n",
" g | \n",
" 73 | \n",
" 53 | \n",
" 87 | \n",
" 33 | \n",
" 46 | \n",
" 37 | \n",
"
\n",
" \n",
" h | \n",
" 12 | \n",
" 12 | \n",
" 23 | \n",
" 82 | \n",
" 94 | \n",
" 8 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" duration playtime up favorite comment share\n",
"a 1 29 95 40 30 13\n",
"b 58 43 26 78 70 61\n",
"c 41 18 17 57 45 29\n",
"d 14 55 36 82 75 43\n",
"e 25 40 49 5 49 57\n",
"f 48 61 59 1 45 88\n",
"g 73 53 87 33 46 37\n",
"h 12 12 23 82 94 8"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# dict -> df\n",
"df_dict = pd.DataFrame.from_dict(data_dict, orient='index')\n",
"df_dict"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## csv文件"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"# 存储为csv文件\n",
"df.to_csv('sample.csv')"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 1, 29, 95, 40, 30, 13],\n",
" [58, 43, 26, 78, 70, 61],\n",
" [41, 18, 17, 57, 45, 29],\n",
" [14, 55, 36, 82, 75, 43],\n",
" [25, 40, 49, 5, 49, 57],\n",
" [48, 61, 59, 1, 45, 88],\n",
" [73, 53, 87, 33, 46, 37],\n",
" [12, 12, 23, 82, 94, 8]])"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 需要指定index_col=0\n",
"df_csv = pd.read_csv('sample.csv', index_col=0)\n",
"df_csv.values"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## excel文件"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"df.to_excel('sample.xlsx')"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" Unnamed: 0 | \n",
" duration | \n",
" playtime | \n",
" up | \n",
" favorite | \n",
" comment | \n",
" share | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" a | \n",
" 1 | \n",
" 29 | \n",
" 95 | \n",
" 40 | \n",
" 30 | \n",
" 13 | \n",
"
\n",
" \n",
" 1 | \n",
" b | \n",
" 58 | \n",
" 43 | \n",
" 26 | \n",
" 78 | \n",
" 70 | \n",
" 61 | \n",
"
\n",
" \n",
" 2 | \n",
" c | \n",
" 41 | \n",
" 18 | \n",
" 17 | \n",
" 57 | \n",
" 45 | \n",
" 29 | \n",
"
\n",
" \n",
" 3 | \n",
" d | \n",
" 14 | \n",
" 55 | \n",
" 36 | \n",
" 82 | \n",
" 75 | \n",
" 43 | \n",
"
\n",
" \n",
" 4 | \n",
" e | \n",
" 25 | \n",
" 40 | \n",
" 49 | \n",
" 5 | \n",
" 49 | \n",
" 57 | \n",
"
\n",
" \n",
" 5 | \n",
" f | \n",
" 48 | \n",
" 61 | \n",
" 59 | \n",
" 1 | \n",
" 45 | \n",
" 88 | \n",
"
\n",
" \n",
" 6 | \n",
" g | \n",
" 73 | \n",
" 53 | \n",
" 87 | \n",
" 33 | \n",
" 46 | \n",
" 37 | \n",
"
\n",
" \n",
" 7 | \n",
" h | \n",
" 12 | \n",
" 12 | \n",
" 23 | \n",
" 82 | \n",
" 94 | \n",
" 8 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Unnamed: 0 duration playtime up favorite comment share\n",
"0 a 1 29 95 40 30 13\n",
"1 b 58 43 26 78 70 61\n",
"2 c 41 18 17 57 45 29\n",
"3 d 14 55 36 82 75 43\n",
"4 e 25 40 49 5 49 57\n",
"5 f 48 61 59 1 45 88\n",
"6 g 73 53 87 33 46 37\n",
"7 h 12 12 23 82 94 8"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 若不指定index_col=0,会多出一行'Unnamed: 0'\n",
"df_excel = pd.read_excel('sample.xlsx')\n",
"df_excel"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}