unhashable type list. You can learn more about the related topics by checking out the following tutorials: TypeError: unhashable type: 'dict' in Python [Solved]TypeError: unhashable type: 'list' when using built-in set function (4 answers) Closed 4 years ago . unhashable type list

 
 You can learn more about the related topics by checking out the following tutorials: TypeError: unhashable type: 'dict' in Python [Solved]TypeError: unhashable type: 'list' when using built-in set function (4 answers) Closed 4 years ago unhashable type list apply(tuple)

Modified 5 years, 7 months ago. To get nunique or unique in a pandas. 3. See examples, tips and links to related topics. What causes the “TypeError: unhashable type: ‘list'” error? What is a list in Python? In Python, a list is a sequence of values. Import系(ImportError) ImportError: No module named そんなモジュールねーよ!どうなってんだ! Attribute系(AttributeError) AttributeError: 'X' object has no. 03:01 The same goes for. 1 Answer. . Python의 TypeError: unhashable type: 'list'. Connect and share knowledge within a single location that is structured and easy to search. Learn how to use a dictionary with a list as a key or value, and how to avoid the TypeError: unhashable type: 'list' error. リスト型が入れ子に出来たので、集合型でも試してみたのですが. I have converted to tuple as you had suggest (I have updated the code in question). Viewed 2k times -1 Closed. The input I am using looks like this: 4 1: 25 2: 20 25 28 3: 27 32 37 4: 22 Where 4 is the amount of lines that will be outputted in that format. TypeError: unhashable type: 'list'. 1 Answer. Teams. As a solution, simply add the lists together before trying to apply FreqDist, like so: allWords = [] for wordList in words: allWords += wordList FreqDist (allWords) A more complete revision to do what you would like. The issue is that lists can't be keys in a set - as they are mutable. Follow edited Mar 3,. lookup_field =. 7 dictionaries are ordered data collections; in Python 3. We can access an element from a list using subscript notation. They are very useful to count the number of occurrences of “simple” items. homePSDpath = os. TypeError: unhashable type: 'list' when creating a new definition. filter pandas dataframe by cell type. 0. Follow edited Oct 19, 2020 at 8:38. EDIT : If you have dictionary then use: result=df ['tags']. If you really want to use a list-like structure as a key in a Python dict, then use a tuple. However elem need to be something hashable. TypeError: unhashable type: 'list' We have used a list ["a","b"] as the key, but the compiler has thrown a TypeError: unhashable type: 'list'. Also, the key child appears twice which will overwrite the first entry (if list is used instead of a set). Slicing DataFrames incorrectly or using iterrows without unpacking the return value can produce Series values when. If the dict you wish to use as key consists of only immutable values, you. A hashable object is an object that has a hash value that remains the same throughout its lifetime. TypeError: unhashable type: 'list' All I wish is that when I run a . Generally, the cause of the unhashable “TypeError” in Python is when your code is directly or indirectly trying to hash an unhashable data type like lists and Pandas “Series” objects. Lists are unhashable because they are mutable; changing their contents would change their hashvalue, which is not allowed. List is a mutable type which cannot be hashed. Hot Network Questions Cramer-Rao bound for biased estimators Drawing chemistry rings with charges on them 70's or 80's movie in which an older gentleman uses a magic paintbrush to paint living children into paintings they can't escape Why not put a crystal oscillator inside the. Consider other unhashable types such as a list containing duplicate pandas dataframes. That causes the message about unhashable type: list. This is the line where I am getting the error: if not (new_entry in new_dictionary): – Abby Liu. Note that, instead of checking if a word is in the dictionary, you can use a defaultdict, as so:1 Answer. The most straight-forward approach is to handle the two. Commit where the problem happensA very simple way to remove duplicates from a list is to convert it to a set (a collection of unique elements) and then convert back to a list. Hashability makes an object usable as a dictionary key and a set member, because these data structures use the hash value internally. TypeError: unhashable type: 'matrix' [closed] Ask Question Asked 6 years, 5 months ago. Immutable Data Types: The built-in hash() function works natively with immutable data types like strings, integers, floats, and tuples. get_variable. Python 3. split () t = "how Halo how you are the ?". ", you can restrict the i as smaller one, j. You can solve it by converting the list to a tuple: ive got the solution so instead using (1,ID, {values}) iam using (0,0, {values}) and update it later, here is my code solution : vals. ndarray'が発生します。それぞれエラー。Your problem is in the line return_dict[transactions] = transactions. (That is, those string tokens are words. You signed in with another tab or window. A set object is an unordered collection of distinct hashable objects. This works, if that's what you want! There's a catch, though! We can only use tuples (or frozensets) if items in the dictionary are all hashable. Once all image capture tasks have been started, I await their completion using await asyncio. tolist () array = [tuple (i) for i in temp] This should create the input in the required format. ベストアンサー. Not applicable ‎02-25-2013 11:43 AM. Since json_dumps requires a valid python dictionary, you may need to rearrange your code. TypeError: unhashable type: 'numpy. Here's one way to generate a list of all words that appear in either document: infile1 = open("1. You cannot use a list to index a dictionary, so this: del dic [v] will fail. ndarray' python; dictionary; append; numpy-ndarray; Share. Pandas dataframe: drop_duplicates after converting to str. You switched accounts on another tab or window. so you are getting. Viewed 141 times 0 I want to append text column of my dataframe with image paths columns using collections. Hashability makes an object usable. No branches or pull requests. ・リストを集合型のキーとして使用している?. The main difference is that tuples are immutable (cannot be modified after initiation). That's fine and all but following the. 8. Although you didn't specify exactly what data is, data['tweet_split'] is likely returning a list of lists, and FreqDist is a probably a dictionary-like object. py. You signed out in another tab or window. Although Python is what's called a dynamically typed language (meaning you don't have to declare the type while assigning a value to a variable), you can annotate your functions, methods, classes, and objects in general to explicitly tell what kind of. 4. For example, you can use (assuming all values of args and kwargs are hashable) key = ( args , tuple (. Development. The variable v in this expression: key, v = spl [0], spl [1:] is a list with the remaining values. Here is one way, by turning your series of lists into separate columns, and only keeping the non-duplicates: df [~df [0]. 4,675 5 5 gold badges 24 24 silver badges 50 50 bronze badges. Dash Python. 2 Answers. Method 5: Convert Inner Lists to Strings. When I try to call the function on a list, I get this error: 'TypeError: unhashable type: 'list''. You signed in with another tab or window. e. How to fix 'TypeError: unhashable type: 'list' error? 1. dict, set ). The objects in python which are immutable and have a hash value are called hashable and which are mutable and don’t have a hash value are called unhashable. smci. The original group pipes is shadowed by the list of pipes and creating a new Pipe object fails: pipes = [Pipe ()] Use different names for the group and the list. Here is a snippet that may be helpful. Example with lists: {[1]: 1, [2]: 2} Result: TypeError: unhashable type: 'list' Example with lists converted to tuples: {tuple([1]): 1, tuple([2. Teams. Using pandas group operations. contains (heavy_rain_indicator)) I want the columns Heavy rain indicator to be TRUE when heavy rain indicators are present and light rain indicator to be TRUE when light rain indicators are present. The docs say:. search (r' ( [a-zA-Z_]+)food', homeFoodpath). python; pandas; Share. Only hashable objects can be keys in a dictionary. Pandas, unique conditional with column string appending. com The Python TypeError: unhashable type: 'list' usually means that a list is being used as a hash argument. This is because the output of findall() is a list: Return all non-overlapping matches of pattern in string, as a list of strings or tuples. append (key) values. One approach that solves this in linear time is to serialize items with serializers such as pickle so that unhashable objects such as lists can be added to a set for de-duplication, but since sets are unordered in Python and you apparently want the output to be in the original insertion order, you can use dict. Viewed 3k times. close() # replace all dots with empty string data1 = data1. cartier April 3, 2018, 4:37am 1. TypeError: unhashable type: 'list' Code : Python の TypeError: unhashable type: 'list' このエラーは、リストなどのハッシュ不可能なオブジェクトをキーとして Python 辞書に渡したり、関数のハッシュ値を検索したりするときに発生します。 Dictionaries は Python のデータ構造であり、キーと値のペアで機能します。 The hash() function is a built-in Python method utilized to generate a distinct numerical value. Index objects (and therefore any grouped columns) cannot have lists, as these are mutable objects and therefore cannot form a stable index. Teams. When we try to hash the tuple using the built-in hash () function, we get a unique hash value. Or stacks contains other data and you didn't showed the right node. This will transform the lists into tuples, which are hashable (and immutable). A list can contain different data types and other container objects such as a list, tuple, set, or dictionary. 83 1 1 silver badge 6 6 bronze badges. Kaung Myat Kaung Myat. dfMerged = pd. Copy link ghost commented Jul 30, 2018 @Akasurde That makes sense, when I switched to the snippet below, it worked, however for some reason is doing the task twice per node. Connect and share knowledge within a single location that is structured and easy to search. Python structures such as Dictionary or a pandas DataFrame or Series objects, require that each object instance is uniquely identified . If use sheet_name=None then get dictionary of DataFrames for each sheetname with keys by sheetname texts. As an example of an other object type which is mutable and not hashable by design, consider list and this example: >>> L = [1, 2, 3] >>> set ( [L]) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unhashable type: 'list. Hot Network Questions Are uVia, blind via, buried via and backdrilled via only relevant to high speed design? When can we "switch" isomorphic things Great commission applies to all believers, but the laity does not baptize. drop_duplicates () And make sure to use it on specific columns which need it, and not all. assign (Bar=1) to obtain the Foo and Bar columns was taken. Thanks, I have solved my code problem. There appears to be 2 problems: Appears. Tuples work if you only have two elements each "sub-list", but if you want to remove duplicate sub-lists more generally if you have a list like: A question and answers site for Python developers to share and discuss programming issues. A list is a mutable type, and cannot be used as a key in a dictionary (it could change in-place making the key no longer locatable in the internal hash table of the dictionary). The code is following. Python structures such as Dictionary or a pandas DataFrame or Series objects, require that each object instance is. Python version used: Python 3. Python structures such as Dictionary or a pandas DataFrame or Series objects, require that each object instance is uniquely identified . You signed out in another tab or window. unhashable: list, dict, set; となっていますが、ここで hashable の方に入っているものは、ハッシュ値が生存期間中変わらないことが保証されています。では、ユーザ定義オブジェクトの場合はどうでしょうか? ユーザ定義オブジェクトの場合 unhashable な. Can you tell more about or add a Tag for your particular programming context, like it being python or javascript – Stefan Wuebbe. import pickle. The hash value of an object is meant to semi-uniquely represent that object. You switched accounts on another tab or window. 3. It must be a nuance related to importing from files. If you want to check if any entry of a list is contained in a dictionaries' keys or in a set, you can try: if any ( [x in {} for x in (4, 5, False)]). To convert list xs to a tuple, use tuple(xs). curdir foodName = re. Iterate and Lemmatize List. I have made this column "FN3LN4ZIP" using another larger dataframe. apply(tuple) . for key, value in dct. If the dict you wish to use as key consists of only immutable values, you. I am trying to execute a method on an odoo10 server using the xmlrpclib. Hashable objects which compare equal must have the same hash value. Just use explode () method and chain unique () method to it: result=tags ['m_tags']. What should the function parameter be so that it can be called on a list of unknown length. the list of reference and `candidate' dispaled as below. Dictionaries are unhashable and can't be members of a set. explode (). Mi-Creativity. tuple (mylist) should be good enough to convert the list to a tuple. DataFrame'> RangeIndex: 4637 entries, 0 to 4636. I submit the following code to the website to solve a problem that involves counting the number of ways to traverse a matrix that includes a number of obstacles: from functools import cache class Solution: def uniquePathsWithObstacles (self, obstacleGrid: List [List [int]]) -> int: start = (0,0) return self. Basically, a hash value is an integer that is used to compare and identify objects quickly. Annotated type-checking. If a column is not contained in the DataFrame, an exception will be raised. Improve this question. Index values are not assigned to dictionaries. Immutable vs. Learn more about TeamsI have a dataframe df which is as follows. drop_duplicates hashes the objects to keep track of which ones have been seen or not, efficiently. Thanks for contributing an answer to Stack Overflow! Please be sure to answer the question. In your code you are passing kmersdatapos to Word2Vec, which is list of list of list of strings. But as lists are mutable objects, they do not have a fixed hash value. I want group by year and month, then calculate the means,why it has wrong? python; python-2. )) function and iterate through it so that you can retrieve the POS tag and tokens, i. Python dictionaries store their data in key-value format. 1. The provided code snippet resolves the issue. It expects a field (as string) and not a list. Series). product. Line 7: The NumPy ndarray arr is converted to a tuple tuple_arr using the tuple () constructor to resolve the issue. This should be enough to allow unhashable items in our solution. assign (Foo=1), bar. dict, set ). I want to get the count of words based on those users which are named as gold_users. From the Python glossary: An object is hashable if it has a hash value which never changes during its lifetime (it needs a __hash__ () method), and can be compared to other objects (it needs an __eq__ () or __cmp__ () method). TypeError: unhashable type: 'list' Subscribe. You build an object that will hold your data and you define __hash__ and __eq__. 0 == True, then hash (1) == hash (1. TypeError: unhashable type: 'list' Is there any way around this. Follow edited May 23, 2017 at 12:09. i confused what's make those list different. A Counter is a dict subclass for counting hashable objects. defaultdict(list). xlsx') If need processing all sheetnames converted to DataFrame s:Teams. items()[0] for d in new_list_of_dict]) Explanation: items() returns a list of the dictionary's key-value pairs, where each element in the list is a tuple (key, value). Thanks for your answer. So I was getting dicts and attempting to use those dicts as keys into dicts. Getting TypeError: unhashable type: 'list' and AttributeError: dlsym(0x7fa8c57be020, AttachDebuggerTracing): symbol not found errors when I create my model based on Word2Vec implementation of the gensim module. エラーのtracebackが不明&コード断片からの推測ですが. MultiIndex. transform (tuple) – Panwen Wang. In the string data type, the values are characters. 7; dictionary; Share. Assuming each list within your airline series consists of only one element, you can transform your data before grouping. ndarray" Because I already could feed a list with lenght = nn to a placeholder with shape = (nn,) So before feeding the numpy array to the placeholder, I wrote. For example, whereas. You are using list as an key in the dictionary. It would load all countries with the name DummyCountry, but only name and id fields. Basically: ? However, if you try to use it on non hashable types it doesn’t work. 2 Answers. Seems like it's trying to add the Role class itself to a collection. A way to fix this is by converting lists to tuples before passing them to a cached function: since tuples are immutable and hashable, they can be cached. For example, an object of type tuple can be hashable or not. This means that Python interprets your structure as a single set, to which you attempt to add a single item, which is a list - but lists cannot be hashed as they are mutable. 6. Since you set eq=True and left frozen at the default ( False ), your dataclass is unhashable. variables [1] is a list and you can not use this line: if row not in assignment or column not in assignment: ex of search of a list in a dict: [123] in {1: 2} output: TypeError: unhashable type: 'list'. read_excel ('example. As the program expects array to be a list of 2d hashable types (2d tuples), its best if you convert array to that form, before calling any function on it. Dec 3, 2022 at 8:31. A Counter is a dict subclass for counting hashable objects. 7; pandas; pandas-groupby; Share. Thanks, it worked like a charm. What causes the “TypeError: unhashable type: ‘list'” error? What is a list in Python? In Python, a list is a sequence of values. TypeError: unhashable type: 'list' df_data = df[columns] Hot Network Questions Why don't guitar chords and staff notations match each other? Integrating with Mathway What are some ways to stay engaged with the mathematical community from outside academia? First instance of a universe being "close enough". I isolated my "hosts" in to an inventory file and used the hosts list in the playbook. python; pandas; Share. A tuple is immutable, so after construction, the values cannot change and therefore the hash cannot change either (or at least a good implementation should not let the hash change). 辞書のキーとしてハッシュ化できない型 list を与えているというエラーです。. My dataset is composed of a column “extrait” ( that’s the input text) and a column “_Labels” ( which is a string of labels seperated by a space) Since you’re trying to solve a multi-label problem, you need to define your datablock accordingly. str. Reload to refresh your session. 自分で定義したオブジェクトを辞書のkeyに設定しようとすると、ハッシュ化できないからエラーになる。. My desired output is like: list date_time name value 1 0 2015-05-22 05:37:59 Tom 129 1 2015-05-22 05:37:59 Kate 0 2. 03:01 The same goes for dictionaries, unhashable type: 'dict'. samir Guesmi. 1 # Unhashable type (dict) 2 my_dict = {'Name': 'Jim', 'Age': 26} ----> 3 print (hash (my_dict)) TypeError: unhashable type: 'dict'. it just fetches from as django queryset objects and converting into list to remove duplicates using itemgetter and itertools method like python remove duplicate dictionaries from a list. I want to consume kafka message from any arbitrary offset by KafkaUtils. def subsetsWithDup(self, nums: List[int]) -> List[int]: return list(set(nums))Python: TypeError: unhashable type: 'list' when groupby list. get_variable (. Attempted to add a second y-axes using the code below:Try converting the list to tuple. The problem is that list() items are not hashable. In this tutorial we are going solve unhashable type error. But i am getting TypeError: not all arguments converted during string formatting. Sorted by: 1. List is not a hashable type in python. Some say tuple is immutable, but at the same time it is somewhat not hashable (throws). tf. While values can be of any data type, from lists to strings, only hashable objects are acceptable as keys. See instructions here. Particularly, Immutable data types such as numbers, strings, and tuples are hashable. Method 4: Flatten List of Lists + Set Comprehension. To use a dict as a key you need to turn it into something that may be hashed first. close() infile2. channels = a. . Hot Network Questions Implementation of recursive `ls` utilityPossible Duplicate: Python: removing duplicates from a list of lists Say i have list a=[1,2,1,2,1,3] If all elements in a are hashable (like in that case), this would do the job: list(set. Share. I think it's because using *args means the function will be expecting a tuple, but I don't know how long the list getting passed to the function will be. The clever idea to use foo. Dictionaries consist of two parts: keys and values. In Python, a dictionary is stores data in key:value pairs. Python の TypeError: unhashable type: 'slice' を修正. The element of set need to be hashable, which means immutable, use tuple instead of list. On the other hand, unhashable types are those which do not have a constant hash value and cannot be used as keys in dictionaries or elements in sets. 15. del dic [value] The labels on the control types are also weirdly duplicated: It appears to be passing values like ["Lineart","Lineart"] instead of just "Lineart" to select_control_type. uniform (size= (10,2)). transpose ('lat','lon','sector','time') Share. I have tried converting foodName to a tuple prior to using it to. – TypeError: unhashable type: 'list' or. 4 Replies 29571 Views list many2many. – Alex Pshenko. The goal of my code below is to take 10 number from random. data = set ( [9, [8,7],6,6,5]) print (data) print (type (data)) 下記エラーが表示されました. falsetru. You need to pass a list of list of strings to gensim's Word2Vec. Liondancer. For a list, the easiest solution is to convert it into a. Community Bot. Even if it seem to work, it is a terrible solution. any(1)]. In BasePlot. See full list on pythonpool. unique () Now if you print result you will get your desired output. So this does not work: >>> dict_key = {"a": "b"} >>> some_dict [dict_key] = True Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unhashable type: 'dict'. 위와 같이 코딩하게 된다면, 위에서 나온 에러 (TypeError: unhashable type: 'list')를 만날 수 있다. Since it is unhashable, a Series object is not a good fit for any of these. items ()) for d in l}] The strategy is to convert the list of dictionaries to a list of tuples where the tuples contain the items of the dictionary. Hash values are a numeric constructs that can’t change and thus allows to uniquely identify each object. replace('. But as lists are mutable objects, they do. Take an element x sequentially from a list randomnodes and append the neighbors of x at the end of the list. Station. unhashable: list, dict, set; となっていますが、ここで hashable の方に入っているものは、ハッシュ値が生存期間中変わらないことが保証されています。では、ユーザ定義オブジェクトの場合はどうでしょうか? ユーザ定義オブジェクトの場合 unhashable なキー The main () routine shown below takes a list of multiple cameras, and iterating over each camera in the list, main () makes creates an asyncio task for each camera using asyncio. Hashable vs. However, since a Python list is a mutable and ordered data type, we can both access any of its items and modify them: # Access the 1st item of the list. Learn more about Teamsdef my_serialize(key_nums: list): key_nums = sorted(key_nums) base = max(key_nums) sum_ = 0 for power, num in enumerate(key_nums): sum_ += base**power * num return sum_ which should give you a unique (incredibly large!) integer to store that will be smaller in memory than the tuple. from typing vs directly referring type as list/tuple/etc 82 TypeError: unhashable type: 'list' when using built-in set function Use something like df[df. Follow edited Jul 23, 2015 at 15:27. 0. 2. Since we assume this list contains only one element, we take the first, and use list. Let’s manually find the hash value of the list. Modified 1 year, 5 months ago. We cannot access elements in a set using subscript notation. Next actually keeping the list of tokenized words and then the list of pos tags and then the list of lemmas separately sounds logical but since the function finally only returns the function, you should be able to chain up the pos_tag(word_tokenize(. 0. You need to use a hashable collection instead, like a tuple. A set contains unique elements. sum ()That weird number (3675389749896195359) represents the hash value of the string Trey in my Python interpreter. However, we saw that lists and dictionaries are unhashable, which means that calling hash() on them errors and says unhashable type: 'list'. compile_channels (channels) if channel in channel_list: a. ServerProxy. robert robert. 4. How can I merge rows in pandas Dataframes when the value of a cell in a particular column is same. This will return the subset of rows where at least a single cell is a list, which should help you locate the problem. When you store the hash of a value in, for example, a dict, if the object changes, the stored hash value won't find out, so it will remain the same. This line cannot do high dimension NumPy list slicing on a dict. I have only been using Dash a few weeks and I’m now trying pattern matching callbacks. If you want to get the hash of a container object, you should cast the list to a tuple before hashing. To solve this you can convert the inner lists to tuples before counting them: ALL_ipAddDict = dict (Counter (map (tuple, ALL_ipAdd)). str. Sorted by: 11. 1 Answer. I have 2 questions for the Python Guru's: a) When I look at the Python definition of Hashable -. If the value of the object changed later, the hash value would not, and the dictionary would not be able to find the object. Q&A for work. 1 Answer. Learn how to fix this error with examples and. Q&A for work. This will return the subset of rows where at least a single cell is a list, which should help you locate the problem. answered May 2, 2017 at 20:01. 1. gather doesn't know what to do with that and attempts to treat the dicts as awaitable objects, which fails soon enough. Address: 1178 Broadway, 3rd Floor, New York, NY 10001, United States. Examples of unhashable types include lists, sets, and dictionaries themselves. TypeError: unhashable type: 'list' 上記のようなエラーが出た時の対処法。. Sorted by: 274. For your specific problem however, there is. File "<stdin>", line 1, in < module > TypeError: unhashable type: 'list' lru_cache is vulnerable to hash collision attack and can be hacked or compromised. actually with just a few weeks of experience in python you get used to the fact that dicts are far widely used than sets and to the default behaviour of {} – Ishan SrivastavaSolution to TypeError: unhashable type: ‘list’. When you convert it to set () it need to make sure no item appear more than once, and set () relay on hash function of the items in the list. python perform an operation by group. A python List transactions is mutable, therefore you cant use it as a key return_dict[transactions]. Connect and share knowledge within a single location that is structured and easy to search. not changeable). NOTE: It wouldn't hurt if the col values are lists and string type. To use a dict as a key you need to turn it into something that may be hashed first. 1 Answer. The rest of the code you have posted will work as expected with the below solution. 1 1 1 silver badge. 2. 1. TypeError: unhashable type: ‘dict’. Since the tuples can be hashed, you can remove duplicates using set (using a set comprehension here, older python alternative would be set (tuple (d. So there were 3 issues primarily: missing closing ) at few places; The method to access a dictionary key value should be dict[key] and if the dictionary is nested then it should be dict[key1][key2] and not dict[key1[key2]]; get_average() expects just the student name (i. Deep typing. len () == 0). setparams you call BasePlot. 1. 2. For example: corpus = [ ["lorem", "ipsum"], ["dolor"], ["sit", "amet"]] is a valid parameter for the Word2Vec function. 2 Answers. Why Python TypeError: unhashable type: 'list' So this does not work: >>> dict_key = {"a": "b"} >>> some_dict [dict_key] = True Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unhashable type: 'dict'. A dict is not a valid key; it is not a “hashable type” i. then, i check the type of reference and candidate, both from the original code and the modified, it return the same type list. Community Bot. duplicated ("phone")] # name kind phone # 2 [Carol Sway. In this guide, we talk about what this error means and why.