Skip to content

Instantly share code, notes, and snippets.

@c4t4r
Last active February 23, 2024 02:40
Show Gist options
  • Save c4t4r/7492125ac0ec06761707791a9a0e3d21 to your computer and use it in GitHub Desktop.
Save c4t4r/7492125ac0ec06761707791a9a0e3d21 to your computer and use it in GitHub Desktop.
Pandas Dataframe
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"id": "fb1a4383-1739-4b1e-911b-d1738b7f84f1",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\USER\\AppData\\Local\\Temp\\ipykernel_8356\\4080736814.py:1: DeprecationWarning: \n",
"Pyarrow will become a required dependency of pandas in the next major release of pandas (pandas 3.0),\n",
"(to allow more performant data types, such as the Arrow string type, and better interoperability with other libraries)\n",
"but was not found to be installed on your system.\n",
"If this would cause problems for you,\n",
"please provide us feedback at https://github.com/pandas-dev/pandas/issues/54466\n",
" \n",
" import pandas as pd\n"
]
}
],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "0e4366ad-a18f-4d04-b481-1e9383c81850",
"metadata": {},
"outputs": [],
"source": [
"data = {\n",
" \"month\": [1, 2, 3, 4, 5],\n",
" \"weather\": [\"rainy\", \"sunny\", \"cloudy\", \"windy\", \"cloudy\"]\n",
"}"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "ba951768-89fd-43fa-af29-7f7ef2a0e19f",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'month': [1, 2, 3, 4, 5], 'weather': ['rainy', 'sunny', 'cloudy', 'windy', 'cloudy']}\n"
]
}
],
"source": [
"print(data)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "5e03c4e0-9ed7-4717-91d2-028de458f6de",
"metadata": {},
"outputs": [],
"source": [
"df = pd.DataFrame(data)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "5a44e001-803c-4136-b018-b0f6fe0d9ac6",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"0 1 rainy\n",
"1 2 sunny\n",
"2 3 cloudy\n",
"3 4 windy\n",
"4 5 cloudy\n"
]
}
],
"source": [
"print(df)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "0c6a2921-7aae-47ac-abd2-e8cf2e46b456",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 2, 3, 4, 5]\n"
]
}
],
"source": [
"m = list(df['month'])\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "80e0d45f-b3ba-4853-b491-3fd9446eb11d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['rainy', 'sunny', 'cloudy', 'windy', 'cloudy']\n"
]
}
],
"source": [
"m = list(df['weather'])\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "f4f4a998-2b28-4565-b4b1-1fb078df17bb",
"metadata": {},
"outputs": [
{
"ename": "KeyError",
"evalue": "'other'",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mKeyError\u001b[0m Traceback (most recent call last)",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\indexes\\base.py:3802\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[1;34m(self, key)\u001b[0m\n\u001b[0;32m 3801\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m-> 3802\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_engine\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcasted_key\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 3803\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n",
"File \u001b[1;32mindex.pyx:153\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[1;34m()\u001b[0m\n",
"File \u001b[1;32mindex.pyx:182\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[1;34m()\u001b[0m\n",
"File \u001b[1;32mpandas\\\\_libs\\\\hashtable_class_helper.pxi:7081\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[1;34m()\u001b[0m\n",
"File \u001b[1;32mpandas\\\\_libs\\\\hashtable_class_helper.pxi:7089\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[1;34m()\u001b[0m\n",
"\u001b[1;31mKeyError\u001b[0m: 'other'",
"\nThe above exception was the direct cause of the following exception:\n",
"\u001b[1;31mKeyError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[9], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mlist\u001b[39m(\u001b[43mdf\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mother\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m]\u001b[49m)\n\u001b[0;32m 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(m)\n",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\frame.py:4090\u001b[0m, in \u001b[0;36mDataFrame.__getitem__\u001b[1;34m(self, key)\u001b[0m\n\u001b[0;32m 4088\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcolumns\u001b[38;5;241m.\u001b[39mnlevels \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[0;32m 4089\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_getitem_multilevel(key)\n\u001b[1;32m-> 4090\u001b[0m indexer \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcolumns\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 4091\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(indexer):\n\u001b[0;32m 4092\u001b[0m indexer \u001b[38;5;241m=\u001b[39m [indexer]\n",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\indexes\\base.py:3809\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[1;34m(self, key)\u001b[0m\n\u001b[0;32m 3804\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(casted_key, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;129;01mor\u001b[39;00m (\n\u001b[0;32m 3805\u001b[0m \u001b[38;5;28misinstance\u001b[39m(casted_key, abc\u001b[38;5;241m.\u001b[39mIterable)\n\u001b[0;32m 3806\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28many\u001b[39m(\u001b[38;5;28misinstance\u001b[39m(x, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m casted_key)\n\u001b[0;32m 3807\u001b[0m ):\n\u001b[0;32m 3808\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m InvalidIndexError(key)\n\u001b[1;32m-> 3809\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01merr\u001b[39;00m\n\u001b[0;32m 3810\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mTypeError\u001b[39;00m:\n\u001b[0;32m 3811\u001b[0m \u001b[38;5;66;03m# If we have a listlike key, _check_indexing_error will raise\u001b[39;00m\n\u001b[0;32m 3812\u001b[0m \u001b[38;5;66;03m# InvalidIndexError. Otherwise we fall through and re-raise\u001b[39;00m\n\u001b[0;32m 3813\u001b[0m \u001b[38;5;66;03m# the TypeError.\u001b[39;00m\n\u001b[0;32m 3814\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_check_indexing_error(key)\n",
"\u001b[1;31mKeyError\u001b[0m: 'other'"
]
}
],
"source": [
"m = list(df['other'])\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "a0e75842-b2a6-463c-b883-9a1e2b58d44e",
"metadata": {},
"outputs": [],
"source": [
"m = list(df.loc[0])\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "7da3a1cf-a841-4ab6-a10d-9fd0e6fd96f9",
"metadata": {},
"outputs": [],
"source": [
"m = list(df.loc[1])\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "0ff793a0-dfab-40c4-a3fa-589e78c9edfc",
"metadata": {},
"outputs": [],
"source": [
"m = list(df.loc[4])\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "48936b1e-b4b7-4d67-9fd4-a56327c70254",
"metadata": {},
"outputs": [
{
"ename": "KeyError",
"evalue": "5",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\indexes\\range.py:413\u001b[0m, in \u001b[0;36mRangeIndex.get_loc\u001b[1;34m(self, key)\u001b[0m\n\u001b[0;32m 412\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m--> 413\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_range\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mindex\u001b[49m\u001b[43m(\u001b[49m\u001b[43mnew_key\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 414\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n",
"\u001b[1;31mValueError\u001b[0m: 5 is not in range",
"\nThe above exception was the direct cause of the following exception:\n",
"\u001b[1;31mKeyError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[10], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mlist\u001b[39m(\u001b[43mdf\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mloc\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m5\u001b[39;49m\u001b[43m]\u001b[49m)\n\u001b[0;32m 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(m)\n",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\indexing.py:1192\u001b[0m, in \u001b[0;36m_LocationIndexer.__getitem__\u001b[1;34m(self, key)\u001b[0m\n\u001b[0;32m 1190\u001b[0m maybe_callable \u001b[38;5;241m=\u001b[39m com\u001b[38;5;241m.\u001b[39mapply_if_callable(key, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mobj)\n\u001b[0;32m 1191\u001b[0m maybe_callable \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_check_deprecated_callable_usage(key, maybe_callable)\n\u001b[1;32m-> 1192\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_getitem_axis\u001b[49m\u001b[43m(\u001b[49m\u001b[43mmaybe_callable\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43maxis\u001b[49m\u001b[43m)\u001b[49m\n",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\indexing.py:1432\u001b[0m, in \u001b[0;36m_LocIndexer._getitem_axis\u001b[1;34m(self, key, axis)\u001b[0m\n\u001b[0;32m 1430\u001b[0m \u001b[38;5;66;03m# fall thru to straight lookup\u001b[39;00m\n\u001b[0;32m 1431\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_validate_key(key, axis)\n\u001b[1;32m-> 1432\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_label\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43maxis\u001b[49m\u001b[43m)\u001b[49m\n",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\indexing.py:1382\u001b[0m, in \u001b[0;36m_LocIndexer._get_label\u001b[1;34m(self, label, axis)\u001b[0m\n\u001b[0;32m 1380\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m_get_label\u001b[39m(\u001b[38;5;28mself\u001b[39m, label, axis: AxisInt):\n\u001b[0;32m 1381\u001b[0m \u001b[38;5;66;03m# GH#5567 this will fail if the label is not present in the axis.\u001b[39;00m\n\u001b[1;32m-> 1382\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mobj\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mxs\u001b[49m\u001b[43m(\u001b[49m\u001b[43mlabel\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43maxis\u001b[49m\u001b[43m)\u001b[49m\n",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\generic.py:4295\u001b[0m, in \u001b[0;36mNDFrame.xs\u001b[1;34m(self, key, axis, level, drop_level)\u001b[0m\n\u001b[0;32m 4293\u001b[0m new_index \u001b[38;5;241m=\u001b[39m index[loc]\n\u001b[0;32m 4294\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m-> 4295\u001b[0m loc \u001b[38;5;241m=\u001b[39m \u001b[43mindex\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 4297\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(loc, np\u001b[38;5;241m.\u001b[39mndarray):\n\u001b[0;32m 4298\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m loc\u001b[38;5;241m.\u001b[39mdtype \u001b[38;5;241m==\u001b[39m np\u001b[38;5;241m.\u001b[39mbool_:\n",
"File \u001b[1;32m~\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\pandas\\core\\indexes\\range.py:415\u001b[0m, in \u001b[0;36mRangeIndex.get_loc\u001b[1;34m(self, key)\u001b[0m\n\u001b[0;32m 413\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_range\u001b[38;5;241m.\u001b[39mindex(new_key)\n\u001b[0;32m 414\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n\u001b[1;32m--> 415\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01merr\u001b[39;00m\n\u001b[0;32m 416\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(key, Hashable):\n\u001b[0;32m 417\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key)\n",
"\u001b[1;31mKeyError\u001b[0m: 5"
]
}
],
"source": [
"m = list(df.loc[5])\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "6047df14-c67d-4389-b203-9856714877f9",
"metadata": {},
"outputs": [],
"source": [
"m = df.loc[0]\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "a13c7ec5-3e75-4150-a501-4be63b22b362",
"metadata": {},
"outputs": [],
"source": [
"m = df.loc[4]\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "9d8f0d87-cec7-4f58-82d9-9009ec570db1",
"metadata": {},
"outputs": [],
"source": [
"m = df.loc[1:2]\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "7c72ad96-94bb-4a78-8b7f-72ce0321b4b0",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"0 1 rainy\n",
"1 2 sunny\n",
"2 3 cloudy\n",
"3 4 windy\n",
"4 5 cloudy\n"
]
}
],
"source": [
"m = df.loc[0:4]\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "dcb384db-0931-4afd-aa32-3b0e72045101",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"3 4 windy\n",
"4 5 cloudy\n"
]
}
],
"source": [
"m = df.loc[3:20]\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "1b728d17-9730-44c1-abd1-fca8a646d769",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"0 1 rainy\n",
"1 2 sunny\n",
"2 3 cloudy\n"
]
}
],
"source": [
"m = df.loc[-1:2]\n",
"print(m)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "91843b22-cda1-4cfb-999a-f9f87c14d853",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"a 1 rainy\n",
"b 2 sunny\n",
"c 3 cloudy\n",
"d 4 windy\n",
"e 5 cloudy\n"
]
}
],
"source": [
"idx = ['a', 'b', 'c', 'd', 'e']\n",
"df = pd.DataFrame(data, index=idx)\n",
"print(df)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "663f97d6-6af5-4b5d-bc47-3ce5c3cee7be",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"month 1\n",
"weather rainy\n",
"Name: a, dtype: object\n"
]
}
],
"source": [
"print(df.loc['a'])"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "d3c7ddba-ce93-4b9f-b2ae-c2c19cfbbe70",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"month 5\n",
"weather cloudy\n",
"Name: e, dtype: object\n"
]
}
],
"source": [
"print(df.loc['e'])"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "4cd63ff5-bc66-4403-a9d1-b98e8bccf77d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"a 1 rainy\n",
"b 2 sunny\n",
"c 3 cloudy\n"
]
}
],
"source": [
"print(df.loc['a':'c'])"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "415955aa-5aaf-4292-9eae-3ba8d0305bf8",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc['a']['month']"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "1d248a2c-45c6-4eab-9e61-ae6ea4e95a6a",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'windy'"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc['d']['weather']"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "f7aec26b-c20a-402e-a717-4c8aea284155",
"metadata": {},
"outputs": [],
"source": [
"df.to_csv(\"data_def_options.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "364a4034-5d87-4917-b0b9-04d1e46b9366",
"metadata": {},
"outputs": [],
"source": [
"df.to_csv(\"data_no_idx_sep_semicolon.csv\", sep=\";\")"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "44b6e4a2-c58e-44e8-b517-fd12082189f8",
"metadata": {},
"outputs": [],
"source": [
"df.to_csv(\"data_no_idx_sep_tab.csv\", sep=\"\\t\")"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "fe8ce542-04ba-4eb3-879d-6538985604d8",
"metadata": {},
"outputs": [],
"source": [
"df.to_csv(\"data_no_idx_sep_space.csv\", sep=\" \")"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "bb8c5e5a-776a-4552-8f7a-f6c478d1c8f1",
"metadata": {},
"outputs": [],
"source": [
"df.to_excel(\"data_no_idx.xlsx\", index=False)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "6c40e68b-be76-41ce-9169-e2ff8b12382c",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"0 1 rainy\n",
"1 2 sunny\n",
"2 3 cloudy\n",
"3 4 windy\n",
"4 5 cloudy\n"
]
}
],
"source": [
"df2 = pd.read_excel(\"data_no_idx.xlsx\")\n",
"print(df2)"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "189cfd4a-01e3-48c9-84ab-687ebe83d91c",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" month weather\n",
"0 1 rainy\n",
"1 2 sunny\n",
"2 3 cloudy\n",
"3 4 windy\n",
"4 5 cloudy\n"
]
}
],
"source": [
"df3 = pd.read_csv(\"data_no_idx_sep_comma.csv\")\n",
"print(df3)"
]
},
{
"cell_type": "markdown",
"id": "b3cc5353-7d83-4453-95f2-4d38f8bc99e9",
"metadata": {},
"source": [
"1.i think the comma is most used and global for separation\n",
"2.There is no \"best separation\",you can use any character,but dont use character that include in your data to be a separation"
]
},
{
"cell_type": "code",
"execution_count": 28,
"id": "7f5c1174-9bc2-4ce0-80c3-488f2df27113",
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 29,
"id": "fdfd98bd-fbfb-49de-8996-961f6922016b",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" t x y\n",
"0 0.0 2.000000 0.000000\n",
"1 0.2 1.984229 0.250666\n",
"2 0.4 1.937166 0.497380\n",
"3 0.6 1.859553 0.736249\n",
"4 0.8 1.752613 0.963507\n",
".. ... ... ...\n",
"95 19.0 1.618034 -1.175571\n",
"96 19.2 1.752613 -0.963507\n",
"97 19.4 1.859553 -0.736249\n",
"98 19.6 1.937166 -0.497380\n",
"99 19.8 1.984229 -0.250666\n",
"\n",
"[100 rows x 3 columns]\n"
]
}
],
"source": [
"data = pd.read_excel(\"lissajous_circle.xlsx\")\n",
"print(data)"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "28e2c5d4-1637-424e-8058-be45b56fac5c",
"metadata": {},
"outputs": [],
"source": [
"t1 = list(data['t'])\n",
"x1 = list(data['x'])\n",
"y1 = list(data['y'])"
]
},
{
"cell_type": "code",
"execution_count": 35,
"id": "7625a85b-168c-4015-8dc0-a16eae583b55",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(t1, '-', color='tab:red', label='t1')\n",
"plt.plot(x1, '-.', color='tab:green', label='x1')\n",
"plt.plot(y1, ':', color='tab:blue', label='y1')\n",
"plt.legend()\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "a8502b44-9573-4fcf-916f-0e35a06aa688",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x1dc15db8910>"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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6nxjxowxbr75ZhN6GLmRI0ca8+bNC74+efKk0adPH6OgoKDF9j/4wQ+MK6+8ssm0UaNGGTfeeGNM+9lekcYXybYZbyQZ69atC9nmtttuMy6++OIm0374wx8aOTk5MexZ9IQT49///ndDkvHpp5+a0qdo+uijjwxJxquvvtpqGyu2QY4IWai6ulrdunVr9f2dO3fK7/drwoQJwWkZGRk6//zzVVJSYkYXTbF582b17NlTAwcO1E033aRPPvnE6i5FTUVFhaqqqpr8hl26dNGoUaPi7jcsKSlR165dNWLEiOC0CRMmyOv1avv27SHn/cMf/qDu3bvrkksuUX5+vmpra2Pd3TbV19dr586dTb57r9erCRMmtPrdl5SUNGkvSTk5OXH3W0nti0+Sjh8/rrS0NKWmpurqq6/Wu+++a0Z3TWGn3+9sDR06VL1799bEiRP1+uuvW92dsFRXV0tSyHHPit+Qh65aZO/evXr00Uf14IMPttqmqqpKiYmJza5F6dWrV1yeD26PSZMm6fvf/77S09O1b98+3XnnnbriiitUUlKiDh06WN29s9b4O/Xq1avJ9Hj8DauqqpodXu/YsaO6desWsq/Tp09XWlqa+vTpo7ffflu33367ysvL9fzzz8e6yyH961//0smTJ1v87t97770W56mqqrLFbyW1L76BAwfqySef1KWXXqrq6mo9+OCDysrK0rvvvhvTh0ubpbXfr6amRp9//rk6d+5sUc+ip3fv3lqxYoVGjBihuro6PfHEExo7dqy2b9+uyy67zOrutSoQCGjBggX61re+pUsuuaTVdlZsgxwROkt33HFHixeunf535k7p4MGDmjRpkqZOnarc3FyLeh6e9sQXiWuvvVbf/e53NXjwYE2ZMkUvvPCC/vGPf2jz5s3RC6INsY7RarGO74YbblBOTo4GDx6s6667Tk8//bTWrVunffv2RTEKRENmZqZmzpypoUOHasyYMXr++efVo0cPrVy50uquIUwDBw7UjTfeqOHDhysrK0tPPvmksrKytGzZMqu7FtK8efP0zjvv6JlnnrG6K81wROgsLVy4ULNnzw7Zpn///sH/P3TokMaNG6esrCw9/vjjIedLSUlRfX29jh071uSo0JEjR5SSknI23Q5bpPGdrf79+6t79+7au3evxo8fH7XlhhLLGBt/pyNHjqh3797B6UeOHNHQoUPbtcxIhRtfSkpKs4tsGxoadPTo0YjWt1GjRkk6ddRzwIABEfc3Wrp3764OHTo0u8sy1PaTkpISUXsrtSe+MyUkJGjYsGHau3dvLLpoutZ+v+TkZEccDWrNyJEj9dprr1ndjVbNnz8/ePNFW0cerdgGSYTOUo8ePdSjR4+w2h48eFDjxo3T8OHDtXr1anm9oQ/IDR8+XAkJCdq4caOuueYaSafuFDhw4IAyMzPPuu/hiCS+aPjwww/1ySefNEkaYi2WMaanpyslJUUbN24MJj41NTXavn17xHfXtVe48WVmZurYsWPauXOnhg8fLknatGmTAoFAMLkJR2lpqSSZ+hu2JDExUcOHD9fGjRs1ZcoUSacOz2/cuFHz589vcZ7MzExt3LhRCxYsCE4rLi42bXuLRHviO9PJkye1e/duTZ48OYY9NU9mZmazW63j9feLptLSUsu3t5YYhqGf/vSnWrdunTZv3qz09PQ257FkG4zZZdho4sMPPzQuuOACY/z48caHH35oHD58OPh3epuBAwca27dvD0778Y9/bJx//vnGpk2bjB07dhiZmZlGZmamFSG0af/+/cauXbuMJUuWGOecc46xa9cuY9euXcZnn30WbDNw4EDj+eefNwzDMD777DPjv/7rv4ySkhKjoqLCeOWVV4zLLrvMuPDCC40vvvjCqjBCijRGwzCM//7v/za6du1q/PnPfzbefvtt4+qrrzbS09ONzz//3IoQQpo0aZIxbNgwY/v27cZrr71mXHjhhca0adOC75+5ju7du9e45557jB07dhgVFRXGn//8Z6N///7G5ZdfblUITTzzzDOGz+czCgsLjbKyMuOGG24wunbtalRVVRmGYRgzZsww7rjjjmD7119/3ejYsaPx4IMPGnv27DHuvvtuIyEhwdi9e7dVIYQUaXxLliwxNmzYYOzbt8/YuXOnce211xqdOnUy3n33XatCCOmzzz4LbmOSjIcfftjYtWuXsX//fsMwDOOOO+4wZsyYEWz/wQcfGElJScatt95q7Nmzx1i+fLnRoUMH46WXXrIqhDZFGuOyZcuM9evXG++//76xe/du4+abbza8Xq/xyiuvWBVCq2666SajS5cuxubNm5uMebW1tcE28bANkgiZZPXq1YakFv8aVVRUGJKMv//978Fpn3/+ufGTn/zE+OpXv2okJSUZ3/ve95okT/Fk1qxZLcZ3ejySjNWrVxuGYRi1tbVGdna20aNHDyMhIcFIS0szcnNzgzvxeBRpjIZx6hb6n//850avXr0Mn89njB8/3igvLze/82H45JNPjGnTphnnnHOOkZycbMyZM6dJknfmOnrgwAHj8ssvN7p162b4fD7jggsuMG699Vajurraogiae/TRR43zzz/fSExMNEaOHGm88cYbwffGjBljzJo1q0n7P/3pT8bXv/51IzEx0bj44ouNv/3tbyb3ODKRxLdgwYJg2169ehmTJ0823nrrLQt6HZ7GW8XP/GuMadasWcaYMWOazTN06FAjMTHR6N+/f5NtMR5FGuP9999vDBgwwOjUqZPRrVs3Y+zYscamTZus6XwbWhvzTv9N4mEb9HzZWQAAANfhrjEAAOBaJEIAAMC1SIQAAIBrkQgBAADXIhECAACuRSIEAABci0QIAAC4FokQAABwLRIhAADgWiRCAADAtUiEAACAa5EIAXCVjz/+WCkpKfrFL34RnLZt2zYlJiZq48aNFvYMgBV46CoA1ykqKtKUKVO0bds2DRw4UEOHDtXVV1+thx9+2OquATAZiRAAV5o3b55eeeUVjRgxQrt379Y//vEP+Xw+q7sFwGQkQgBc6fPPP9cll1yif/7zn9q5c6cGDx5sdZcAWIBrhAC40r59+3To0CEFAgFVVlZa3R0AFuGIEADXqa+v18iRIzV06FANHDhQjzzyiHbv3q2ePXta3TUAJiMRAuA6t956q/7nf/5H/+///T+dc845GjNmjLp06aIXXnjB6q4BMBmnxgC4yubNm/XII49ozZo1Sk5Oltfr1Zo1a7R161b99re/tbp7AEzGESEAAOBaHBECAACuRSIEAABci0QIAAC4FokQAABwLRIhAADgWiRCAADAtUiEAACAa5EIAQAA1yIRAgAArkUiBAAAXItECAAAuNb/B0ZswpdqeyNRAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.xlabel('x')\n",
"plt.ylabel('y')\n",
"plt.grid()\n",
"\n",
"plt.scatter(x1, y1, marker='o', color='tab:blue')"
]
},
{
"cell_type": "code",
"execution_count": 37,
"id": "ddcc2083-c4c2-4b62-9e8d-2c041af06e45",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" t x y\n",
"0 0.0 2.000000 0.000000\n",
"1 0.2 1.996053 0.250666\n",
"2 0.4 1.984229 0.497380\n",
"3 0.6 1.964575 0.736249\n",
"4 0.8 1.937166 0.963507\n",
".. ... ... ...\n",
"95 19.0 1.902113 -1.175571\n",
"96 19.2 1.937166 -0.963507\n",
"97 19.4 1.964575 -0.736249\n",
"98 19.6 1.984229 -0.497380\n",
"99 19.8 1.996053 -0.250666\n",
"\n",
"[100 rows x 3 columns]\n"
]
}
],
"source": [
"data2 = pd.read_excel(\"lissajous_butterfly.xlsx\")\n",
"print(data2)"
]
},
{
"cell_type": "code",
"execution_count": 41,
"id": "6ae1b03e-c165-48ec-ab00-446796e8d90f",
"metadata": {},
"outputs": [],
"source": [
"t2 = list(data2['t'])\n",
"x2 = list(data2['x'])\n",
"y2 = list(data2['y'])"
]
},
{
"cell_type": "code",
"execution_count": 42,
"id": "21d3e569-46d7-4056-b731-209e54afef59",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x1dc18069910>"
]
},
"execution_count": 42,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.xlabel('x')\n",
"plt.ylabel('y')\n",
"plt.grid()\n",
"\n",
"plt.scatter(x2, y2, marker='o', color='tab:blue')"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "9a5cc48f-abae-4f81-9f9e-fa856fbe98f5",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.11.1"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment