Удаление вкладки каждый n-й столбец из панд df
Я пытаюсь получить доступ к столбцу фрейма данных, который я создал из двух списков, и выполнить некоторую фильтрацию. Однако, кажется, есть дополнительное место для каждого 12-го элемента в моем фрейме данных. Как мне с этим бороться?
import pandas as pd
df = pd.DataFrame(
{'S': s,
'K': k})
Я создал фрейм данных с кодом, как указано выше. Кроме того, по какой-то странной причине он был сохранен в научной нотации с типом float. Я использовал df.round(4), прежде чем смог понять, в чем проблема.
KeyError Traceback (most recent call last)
<ipython-input-14-2e289598b460> in <module>()
----> 1 df[df['S']]
~\Anaconda\lib\site-packages\pandas\core\frame.py in __getitem__(self, key)
1956 if isinstance(key, (Series, np.ndarray, Index, list)):
1957 # either boolean or fancy integer index
-> 1958 return self._getitem_array(key)
1959 elif isinstance(key, DataFrame):
1960 return self._getitem_frame(key)
~\Anaconda\lib\site-packages\pandas\core\frame.py in _getitem_array(self, key)
2000 return self.take(indexer, axis=0, convert=False)
2001 else:
-> 2002 indexer = self.loc._convert_to_indexer(key, axis=1)
2003 return self.take(indexer, axis=1, convert=True)
2004
~\Anaconda\lib\site-packages\pandas\core\indexing.py in _convert_to_indexer(self, obj, axis, is_setter)
1229 mask = check == -1
1230 if mask.any():
-> 1231 raise KeyError('%s not in index' % objarr[mask])
1232
1233 return _values_from_object(indexer)
KeyError: '[-0.65 -0.6 -0.6 -0.6 -0.55 -0.55 -0.55 -0.55 -0.55 -0.55 -0.5 -0.5\n -0.5 -0.5 -0.5 -0.5 -0.5 -0.5 -0.45 -0.45 -0.45 -0.45 -0.45 -0.45\n -0.45 -0.45 -0.45 -0.45 -0.4 -0.4 -0.4 -0.4 -0.4 -0.4 -0.4 -0.4\n -0.4 -0.4 -0.4 -0.4 -0.35 -0.35 -0.35 -0.35 -0.35 -0.35 -0.35 -0.35\n -0.35 -0.35 -0.35 -0.35 -0.35 -0.35 -0.3 -0.3 -0.3 -0.3 -0.3 -0.3\n -0.3 -0.3 -0.3 -0.3 -0.3 -0.3 -0.3 -0.3 -0.3 -0.3 -0.25 -0.25\n -0.25 -0.25 -0.25 -0.25 -0.25 -0.25 -0.25 -0.25 -0.25 -0.25 -0.25 -0.25\n -0.25 -0.25 -0.25 -0.25 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2\n -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.2 -0.15\n -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15\n -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.1 -0.1 -0.1 -0.1 -0.1\n -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1 -0.1\n -0.1 -0.1 -0.1 -0.1 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05\n -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05 -0.05\n -0.05 -0.05 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05\n 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05\n 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1\n 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1\n 0.1 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15\n 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15 0.15\n 0.15 0.15 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2\n 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2\n 0.2 0.2 0.2 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25\n 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25\n 0.25 0.25 0.25 0.25 0.25 0.3 0.3 0.3 0.3 0.3 0.3 0.3\n 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3\n 0.3 0.3 0.3 0.3 0.3 0.3 0.35 0.35 0.35 0.35 0.35 0.35\n 0.35 0.35 0.35 0.35 0.35 0.35 0.35 0.35 0.35 0.35 0.35 0.35\n 0.35 0.35 0.35 0.35 0.35 0.35 0.35 0.4 0.4 0.4 0.4 0.4\n 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4\n 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.45 0.45 0.45 0.45\n 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.45\n 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.45 0.5 0.5 0.5\n 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5\n 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.55 0.55 0.55\n 0.55 0.55 0.55 0.55 0.55 0.55 0.55 0.55 0.55 0.55 0.55 0.55\n 0.55 0.55 0.55 0.55 0.55 0.55 0.55 0.55 0.6 0.6 0.6 0.6\n 0.6 0.6 0.6 0.6 0.6 0.6 0.6 0.6 0.6 0.6 0.6 0.6\n 0.6 0.6 0.6 0.6 0.6 0.6 0.65 0.65 0.65 0.65 0.65 0.65\n 0.65 0.65 0.65 0.65 0.65 0.65 0.65 0.65 0.65 0.65 0.65 0.65\n 0.65 0.65 0.65 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.7\n 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.7 0.75\n 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75\n 0.75 0.75 0.75 0.75 0.75 0.8 0.8 0.8 0.8 0.8 0.8 0.8\n 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.85 0.85\n 0.85 0.85 0.85 0.85 0.85 0.85 0.85 0.85 0.85 0.85 0.85 0.85\n 0.85 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9\n 0.9 0.9 0.95 0.95 0.95 0.95 0.95 0.95 0.95 0.95 0.95 0.95\n 0.95 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.05 1.05\n 1.05 1.05 1.05 1.05 1.1 1.1 1.1 1.1 1.15 1.3 1.3 1.3\n 1.3 1.3 1.35 1.35 1.35 1.35 1.35 1.35 1.35 1.35 1.35 1.35\n 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4\n 1.45 1.45 1.45 1.45 1.45 1.45 1.45 1.45 1.45 1.45 1.45 1.45\n 1.45 1.45 1.45 1.45 1.45] not in index'
1 ответ
Вы можете попробовать удалить каждый \n
в S
вот так:
df["S"] = df["S"].apply(lambda x: float(str(x).replace("\n", "")))
Но, кстати: df[df["S"]]
будет искать значения S
в указателе. С вашей конструкцией dataframe, вероятно, не будет никакого значения S
в указателе.